凌艺樽 • 4个月前
#include<bits/stdc++.h>
#pragma GCC optimize(3)
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
const int N=1e5+10;
const int INF=0x3f3f3f3f;
int n,f[N],ans,k,mt;
struct people{
int t;//Arrive_the_time
int cn;//Which_country
}a[300010];
int main()
{
IOS;
cin>>n;
long long p=0,len=1;
//将人排队,相当于队列
for(int i=1;i<=n;++i)
{
cin>>mt>>k;//存人的时间
for(int j=1;j<=k;++j)
{
p++;
cin>>a[p].cn;//存人的国籍
if(f[a[p].cn]==0)
{
ans++;
}
f[a[p].cn]++;
a[p].t=mt;
}
while(a[p].t-a[len].t>=86400)
{
f[a[len].cn]--;
if(f[a[len].cn]==0)
{
ans--;
}
len++;
}
cout<<ans<<endl;
}
return 0;
}
评论: