OpenJudge计算概论-错误探测
/*======================================================================== 错误探测 总时间限制: 1000ms 内存限制: 65536kB 描述 给出由0和1组成的矩阵,如果矩阵的每一行和每一列的1的数量都是偶数,则认为符合条件。 你的任务就是检测矩阵是否符合条件,或者在仅改变一个矩阵元素的情况下能否符合条件。 "改变矩阵元素"的操作定义为0变成1,1变成0。 输入 包含多个测试数据。每个测试数据有多行,第一行为矩阵的大小n(n < 100),以下n行为矩阵的值。 输入以0结束。 输出 如果矩阵符合条件,则输出OK 如果矩阵仅改变一个矩阵元素就能符合条件,则输出Change bit (x,y),其中x和y为该元素的坐标 如果不符合以上两条,输出Corrupt 样例输入 4 1 0 1 0 0 0 0 0 1 1 1 1 0 1 0 1 4 1 0 1 0 0 0 1 0 1 1 1 1 0 1 0 1 4 1 0 1 0 0 1 1 0 1 1 1 1 0 1 0 1 0 样例输出 OK Change bit (2,3) Corrupt 分析: 输入数组时不需存储数组的数据; 输入时同时计算并用两个一维数组存储每一行、每一列的和 ; 注意求和前要对两个一维数组清零; 统计奇数个1的行和奇数个1的列 的数量rowN和colN; 假如rowN==colN==1说明有且仅有一行和一列含有奇数个1 (这个情况只需要把该行和该列交叉处的值改变一下即可,所以结果就是Change bit (2,3)) 假如 rowN==colN==0,则是OK 假如是其他情况则是Corrupt 注意:输出案例Change bit (2,3)在左括号'(' 前是有一个空格的。少了这个空格, 提交时格式错误的。 另外:分析一下输入输出案例第二组数据发现,题目默认数组的下标从1开始。 ==========================================================================*/
#include<stdio.h> int main() { int n,i,j,t; int rowSum[100],colSum[100];//分别存储每一行、每一列的和 int rowN,colN;//存储有奇数个1的行数、列数 int x,y; freopen("6.in","r",stdin); freopen("result.out","w",stdout); scanf("%d",&n); while(n!=0) { for(i=0;i<100;i++)//清空求和数组 { rowSum[i]=0; colSum[i]=0; } //输入的同时计算每一行每一列的和 for(i=0;i<n;i++) { for(j=0;j<n;j++) { scanf("%d",&t); rowSum[i]=rowSum[i]+t; colSum[j]=colSum[j]+t; } } rowN=0; colN=0; for(i=0;i<n;i++)//检测奇数个1的行、奇数个1的列 { if(rowSum[i]&1) { rowN++; x=i; } if(colSum[i]&1) { colN++; y=i; } } //判断结果 if(rowN==1&&colN==1) { printf("Change bit (%d,%d)\n",x+1,y+1); } else if(rowN==0&&colN==0) { printf("OK\n"); } else printf("Corrupt\n"); //输入下一组的阶数 scanf("%d",&n); } return 0; }
分类:
004-二维数组
, OJ-OpenJudge
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App