1 条题解
-
0
#include<bits/stdc++.h> using namespace std; const int N=100100; struct cow{ int f,s; }c[N]; int h[N], res[N],n,m,cur; void solve(int x,int y){ if(h[y] == 0) { h[y]=x; cur++; } else if(h[y]>x){ int z=h[y]; h[y]=x; if(y == c[z].f) solve(z,c[z].s); } } int main() { cin>>n>>m; for(int i=1;i <= n;i++) cin>>c[i].f>>c[i].s; for(int i=n-1;i>=0;i -- ) solve(i+1,c[i+1].f),res[i+1]=cur; for(int i=1;i <= n;i++) cout << res[i] << endl; return 0; }
- 1
信息
- ID
- 111
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 5
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者