ACM-ICPC SouthWestern Europe Regional Contest 2017题解
题目地址 http://codeforces.com/gym/101635/ A 题: 计算两个数组元素之间最有可能的差值,注意数据全部非法时的情况 #include<bits/stdc++.h> using namespace std; const int maxn = 2005 ; int a[maxn], b[maxn]; int main() { int n, m; scanf( " %d%d " , &n, & m); unordered_map < int , int > mp; for ( int i = 0 ; i < n; ++ i) { scanf( " %d " , a + i); } for ( int i = 0 ; i < m; ++ i) { scanf( " %d " , b + i); for ( int j = 0 ; j < n; ++ j) { if (a[j] > b[i]) break ; ++mp[b[i] - a[j]]; } } int max_num = 0 , max_cnt = 0 ; for (auto i : mp) { if (max_cnt < i.second || max_cnt == i.second && i.first < max_num) { max_cnt = i.second; max_num = i