NC240554. 清楚姐姐的学术群
描述
输入描述
第一行,四个正整数
后面 行,每行两个整数,表示一条消息。
表示第 个人发消息的,表示这条消息是在水,表示这条消息不是在水。
输出描述
第一行一个数,表示有个人受到了神秘惩罚。
第二行个数,从小到大排列,输出所有受到神秘惩罚的人的编号。
如果没有人收到神秘惩罚,只用输出 。
示例1
输入:
5 9 3 2 1 1 2 1 3 1 4 1 3 0 1 0 1 1 5 1 2 1
输出:
3 2 3 4
示例2
输入:
2 3 2 2 1 0 2 0 1 0
输出:
0
C++(clang++ 11.0.1) 解法, 执行用时: 134ms, 内存消耗: 1768K, 提交时间: 2022-09-02 21:54:28
#include<bits/stdc++.h> using namespace std; const int N=3e5+5; int n,m,a,b,p,t,tt,s[N]; int main() { cin>>n>>m>>a>>b; set<int> v; while(m--) { cin>>p>>t; if(t) tt++,s[p]++; else tt=0,s[p]=0; if(tt>=a||s[p]>=b) v.insert(p); } cout<<v.size()<<endl; for(auto i:v) cout<<i<<' '; }