模拟题
用cnt[N]存每一种卡片的个数,total存当前手中所有卡片的种类数目。
关键在于total条件的判别,以及怎么更新。
#include <iostream>
using namespace std;
const int N = 100010;
int cnt[N], total = 0;
int main()
{
int n, m;
scanf("%d%d", &n, &m);
while (m --){
int x;
scanf("%d", &x);
if (! cnt[x]) total ++;
cnt[x] ++;
if (total == n) {
for (int i = 1; i <= n; i ++ ) {
cnt[i] --;
if (! cnt[i]) total --;
}
printf("1");
}
else printf("0");
}
}