本文共 385 字,大约阅读时间需要 1 分钟。
题意:给定q次询问和x,每次询问都会加入一个数到数组(数组初始为空),你每次可以对数组中的任一数进行+x和-x的操作,问你当前数组未出现的最小整数。 思路:连E和F都做出来了居然卡在这一题,感觉自己好像思维能力和观察能力不行。。。。 其实每次可以无限加X和减去X就应该想到结果只会对x的模数有影响,找空位就行了。 #includeusing namespace std;const int maxn=4e5+10;int a[maxn];int main(){ int q,x,t,ans=0; scanf("%d%d",&q,&x); while(q--) { scanf("%d",&t); a[t%x]++; while(a[ans%x]) a[ans%x]--,ans++; printf("%d\n",ans); } }
转载地址:http://foewz.baihongyu.com/