承装承修承试材料在哪个网站做,设计模板设置为本地模板,沈阳建网站,做家务的男人们在哪个网站播出CF #366(div.2) C. Thor 题意#xff1a;一个手机n个联系人#xff0c;有q个操作。每次给出ty和ai#xff0c;如ty1#xff0c;表示收到ai的一条信息#xff1b;如ty2#xff0c;表示将ai发的信息都看掉#xff1b;如ty3#xff0c;表示将第1条到第ai条信息都看掉…CF #366(div.2) C. Thor 题意一个手机n个联系人有q个操作。每次给出ty和ai如ty1表示收到ai的一条信息如ty2表示将ai发的信息都看掉如ty3表示将第1条到第ai条信息都看掉(看过的再看也算)。求每次操作后有多少条信息是没看的。 总结思维题看着简单但就是不好做。。看了一个神犇的代码 //CF#366 C
#includecstdio
using namespace std;int n, q, k, v, x, y, t, a[300300], b[300300], c[300300];
//x表示按第3种最大的右边界a[]表示按第1种输入进去的数b[]表示x后面没有看的数量c[]表示x后面ai出现次数
int main() {scanf(%d%d, n, q);while (q--) {scanf(%d%d, k, v);if (k 1) a[y] v, b[v], c[v], t;else if (k 2) t - b[v], b[v] 0;else {while (x v) { //关键n a[x]; if (c[n]) c[n]--; //x~v 将a[x]出现次数-1if(b[n] c[n]) t--, b[n]--; //b[]肯定是要c[]的如果b[]c[]表示a[x]要看掉一个}}printf(%d\n, t);}
} View Code转载于:https://www.cnblogs.com/sbfhy/p/6292731.html