#include<iostream>
#include<queue>
using namespace std;
constexpr int N = 3E5;
int n,ans;
struct Node {
int time, id;
};
int vis[N+3];
queue<Node> q;
int main(){
cin >> n;
for(int i = 1; i <= n; i++){
int t,k;
cin >> t >> k;
while(!q.empty()){
Node head = q.front();
if(head.time <= t - 86400){
vis[head.id]--;
if(vis[head.id] == 0){
-- ans;
}
q.pop();
continue;
}
break;
}
for(int j = 1; j <= k; j++){
int id;
cin >> id;
Node tmp = {t,id};
q.push(tmp);
vis[id]++;
if(vis[id] == 1){
ans++;
}
}
cout << ans << '\n';
}
return 0;
}