0
点赞
收藏
分享

微信扫一扫

Build a Contest 思维

干自闭 2022-06-29 阅读 48

​​传送门​​​ 思路:找出不同的n个最后输出即可,注意特例。412241233
此时尾部应该是两个1。我太弱了,当时没想到。
代码;

#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<cmath>
#include<string.h>
using namespace std;
char b[100];
int book[100];
int a[100005];
int vis[100005];
int main() {
int n, m;
cin >> n >> m;
for(int i = 0; i < m; i++)
cin >> a[i];
int cnt = 0;
for(int i = 0; i < m; i++) {
if(!vis[a[i]]) {
cnt++;
vis[a[i]]++;
if(cnt == n) {
cout << 1 ;
//cnt = 0;
for(int j = 1; j <= n; j++) {
vis[j]--;
if(!vis[j])
cnt--;
}
continue;
}

cout << 0;
continue;
} else {
vis[a[i]]++;
cout << 0 ;
}
}
return 0;
}


举报

相关推荐

0 条评论