求助啊
#include<bits/stdc++.h>
using namespace std;
struct node
{
int t,nationality;
}detail;
queue<node>ship;
long long n,t,num,nationality,nation[1000001],sum=0;
int main()
{
cin>>n;
memset(nation,0,sizeof(nation));
for(int k=1;k<=n;k++)
{
cin>>t>>num;
detail=ship.front();
while(!ship.empty())
if(detail.t<=t-86400)
{
nation[detail.nationality]--;
if(nation[detail.nationality]==0)
sum--;
ship.pop();
};
for(int i=1;i<=num;i++)
{
cin>>nationality;
detail.t=t;
detail.nationality=nationality;
ship.push(detail);
nation[nationality]++;
if(nation[nationality]==1)
sum++;
}
cout<<sum<<endl;
}
return 0;
}