Codeforces 387B George and Round(贪心)

题目连接:Codeforces 387B George and Round


题目大意:有n个任务,给出n个任务的复杂度,序列a。然后可以事做好一些复杂度的准备,m个序列b,这要复杂度b[i] >= a[j],就可以省去一次工作量,问说还要解决几个问题。


解题思路:贪心,尽量用小的b解决小的a,然后a从小的开始抵消。


#include <stdio.h>
#include <string.h>

const int N = 1000005;
const int INF = 0x3f3f3f3f;

int n, m, a[N];

void init() {
	int k;
	scanf("%d%d", &n, &m);
	for (int i = 0; i < n; i++) scanf("%d", &a[i]);
}

int solve() {
	int ans = 0, p = 0, k;
	for (int i = 0; i < m; i++) {
		scanf("%d", &k);
		if (k >= a[p] && p < n) {
			p++; ans++;
		}
	}
	return ans;
}

int main () {
	init();
	printf("%d\n", n - solve());
	return 0;
}


你可能感兴趣的:(Codeforces 387B George and Round(贪心))