P2058 40pts求调
查看原帖
P2058 40pts求调
1155991
I_Love_Kobe楼主2024/7/19 16:38

代码:

#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll n;
unordered_map<ll,ll>c;
unordered_map<ll,map<ll,ll>>d;
queue<ll>q1;
queue<ll>q2;

int main(){
	cin>>n;
	while(n--){
		ll k,t,a;
		cin>>t>>k;
		q1.push(t);
		q2.push(k);
		for(ll i=1;i<=k;i++){
			cin>>a;
			c[a]++;
			d[t][i]=a;
		}if(t-q1.front()>=86400){
			for(ll i=1;i<=q2.front();i++) c[d[q1.front()][i]]--;
			q1.pop();
			q2.pop();
		}
		cout<<c.size()<<endl;
	}
	return 0;
}

提示:本蒟蒻有点癫,用了两个queue,一个map,一个双重map,各位神犇可以不用在我的基础上改,发一个带注释的新代码给我也行,谢谢。

2024/7/19 16:38
加载中...