红色警报
题目详情 - L2-013 红色警报 (25 分) (pintia.cn)
#include<iostream> using namespace std; const int N=1e5+10; int p[N]; bool st[N]; struct mess{ int x,y; }v[N]; int find(int x) { if(p[x]!=x) p[x]=find(p[x]); return p[x]; } void merge(int x,int y) { int xx=find(x); int yy=find(y); if(xx!=yy) p[xx]=yy; } int main(){ int n,m; cin>>n>>m; for(int i=0;i<n;i++) p[i]=i; for(int i=0;i<m;i++) { cin>>v[i].x>>v[i].y; merge(v[i].x,v[i].y); } int sum=0; for(int i=0;i<n;i++) if(p[i]==i) sum++; int q,k=0; cin>>q; while(q--) { int x; cin>>x; k++; st[x]=true; for(int i=0;i<n;i++) p[i]=i; for(int i=0;i<m;i++) { if(st[v[i].x]||st[v[i].y]) continue; merge(v[i].x,v[i].y); } int t=0; for(int i=0;i<n;i++) if(p[i]==i) t++; //cout<<t<<endl; if(t-sum==1||t==sum) printf("City %d is lost.\n",x); else printf("Red Alert: City %d is lost!\n",x); sum=t; } if(k==n) cout<<"Game Over."<<endl; return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具