社区讨论
ABC E 类似 trie 维护,调不出来,实现有问题吗
学术版参与者 1已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mjedabdu
- 此快照首次捕获于
- 2025/12/20 22:01 2 个月前
- 此快照最后确认于
- 2025/12/23 12:35 2 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define rep(x,y,z) for(int x=y;x<=z;x++)
#define repn(x) rep(x,1,n)
const int N=3e5+7;
int n,nowp;
struct node{
int v,w;
};
bool operator<(const node &X,const node &Y){
return X.w<Y.w;
}
set<node> e[N];
set<int> in[N];
map<int,int> vis[N];
int fir[N];
void add(int x,int y,int uid){
if(!vis[x][y])
e[x].insert({uid,y}),vis[x][y]=uid,in[uid].insert(uid);
else in[vis[x][y]].insert(uid);
}
void dfs(int u){
for(auto [v,w]:e[u]){
for(auto pt:in[v]){
cout<<pt<<" ";
}
dfs(v);
}
}
signed main()
{
cin>>n;
rep(i,1,n){
int x,y;
cin>>x>>y;
add(x,y,i);
}
dfs(0);
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...