#include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> #include<vector> #include<utility> #include<map> #include<set> #include<queue> #include<cmath> using namespace std; typedef long long int int64; int _abs(int x){return max(x, -x);} int main() { int a[101], b[101], an, bn; int use[101] = {0}; scanf("%d", &an); for(int lx = 0;lx < an;lx++) scanf("%d", a+lx); scanf("%d", &bn); for(int lx = 0;lx < bn;lx++) scanf("%d", b+lx); sort(a, a+an); sort(b, b+bn); int cnt = 0; for(int lx = 0;lx < an;lx++){ int ok_index = -1; for(int ly = 0;ly < bn and ok_index == -1;ly++) if( use[ly]==0 and _abs(a[lx] - b[ly]) <= 1) ok_index = ly; if(ok_index != -1){ use[ok_index] = 1; cnt++; } } printf("%d\n", cnt); return 0; }
2014年11月21日 星期五
Codeforces Round #277.5 (Div. 2), problem: (B) BerSU Ball
Greedy取
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言