[ZOJ - 2475 ]Benny's Compiler
水题不多说。上代码
/*这题主要是因为文件数一定是1到n,不具有普遍性 不过成环判定确实巧妙,先将输入按数组存好, 之后在查找的时候交换行列,将列变为未知量一个个查找 若数字未被使用过则标记为1(使用过) 之后将找到的数字作为前面的数传入寻找与它相连的数,若找到了但被用过了即代表循环了 就变成了寻找是否有数字相连且是否被标记过(循环) vis数组代表的是有没有数组与它相连过*/ #include<stdio.h> #include<string.h> #define M 107 int g[M][M],vis[M],flag,n; void dfs(int u) { for(int i=1;i<=n;i++) { if(!flag) return; else if(vis[i]&&g[u][i]) { flag=0; return; } else if(g[u][i]) { vis[i]=1; dfs(i); vis[i]=0; } } } int main() { while(~scanf("%d",&n)&& n!=-1) { memset(vis,0,sizeof(vis)); memset(g,0,sizeof(g)); int u,v; flag=1; for(int i=1;i<=n;i++) { scanf("%d%d",&u,&v); if(u!=v)//如果不加,会WA,已验证 g[u][v]=1; } int in; scanf("%d",&in); vis[in]=1; dfs(in); if(flag) printf("Yes\n"); else printf("No\n"); } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人