/*========================================================================
错误探测
总时间限制: 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[],colSum[];//分别存储每一行、每一列的和
int rowN,colN;//存储有奇数个1的行数、列数
int x,y;
freopen("6.in","r",stdin);
freopen("result.out","w",stdout);
scanf("%d",&n);
while(n!=)
{
for(i=;i<;i++)//清空求和数组
{
rowSum[i]=;
colSum[i]=;
}
//输入的同时计算每一行每一列的和
for(i=;i<n;i++)
{
for(j=;j<n;j++)
{
scanf("%d",&t);
rowSum[i]=rowSum[i]+t;
colSum[j]=colSum[j]+t;
}
}
rowN=;
colN=;
for(i=;i<n;i++)//检测奇数个1的行、奇数个1的列
{
if(rowSum[i]&)
{
rowN++;
x=i;
}
if(colSum[i]&)
{
colN++;
y=i;
}
}
//判断结果
if(rowN==&&colN==)
{
printf("Change bit (%d,%d)\n",x+,y+);
}
else if(rowN==&&colN==)
{
printf("OK\n");
}
else
printf("Corrupt\n");
//输入下一组的阶数
scanf("%d",&n);
}
return ;
}

OpenJudge计算概论-错误探测的更多相关文章

  1. OpenJudge计算概论-取石子游戏

    OpenJudge计算概论-取石子游戏[函数递归练习] /*====================================================================== ...

  2. Openjudge计算概论——数组逆序重放【递归练习】

    /*===================================== 数组逆序重放 总时间限制:1000ms 内存限制:65536kB 描述 将一个数组中的值按逆序重新存放. 例如,原来的顺 ...

  3. OpenJudge计算概论-计算书费

    /*============================================== 计算书费 总时间限制: 1000ms 内存限制: 65536kB 描述 下面是一个图书的单价表: 计算 ...

  4. OpenJudge计算概论-最高的分数

    /*======================================================== 最高的分数 总时间限制: 1000ms 内存限制: 65536kB 描述 孙老师 ...

  5. OpenJudge计算概论-比饭量【枚举法、信息数字化】

    /*====================================================================== 比饭量 总时间限制: 1000ms 内存限制: 655 ...

  6. Openjudge计算概论-角谷猜想

    /*===================================== 角谷猜想 总时间限制: 1000ms 内存限制: 65536kB 描述 所谓角谷猜想,是指对于任意一个正整数,如果是奇数 ...

  7. OpenJudge计算概论-字符串最大跨距

    /*====================================================================== 字符串最大跨距 总时间限制: 1000ms 内存限制: ...

  8. Openjudge计算概论-求序列中的众数

    /*===================================== 求序列中的众数 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个长度为N的整数序列 (不多于128 ...

  9. OpenJudge计算概论-计算鞍点

    /*======================================================================== 计算鞍点 总时间限制: 1000ms 内存限制: ...

随机推荐

  1. 《Programming with Objective-C》的常规规定

    1.每个类的类名在软件中必须唯一的(包括在框架.bounds中),类名有多个单词的时候就是用驼峰方法. Prefix Framework NS Foundation (OS X and iOS) an ...

  2. BZOJ 1951 古代猪文

    快速幂+枚举质因数+欧拉定理+lucas定理+CRT. 注意两点: 1.if (n<m) C(n,m)=0. 2.这里0^0时应该return 0. #include<iostream&g ...

  3. IPhone手机自动添加到itunes设置

    一,项目设置 如图:点击项目--info 在key下面条目上右键点击,选择添加Application supports iTunes file sharing   value设置为yes

  4. ios oc ui 路径和颜色设置--崩溃解决方案

    - (id)init{ self = [super init]; if (self) { _lineColor = CGColorCreateCopy([UIColor whiteColor].CGC ...

  5. (并查集 or BFS+二分)HDU5652

    点击打开链接 并查集: #include<cstdio> #define N 505 using namespace std; struct node { int x,y; }; char ...

  6. 移动端 meta 标签笔记

    (转自http://www.cssue.com/xhtml-css/html5-css3/mobile-meta.html,版权归原作者所有!) 移动平台对 meta 标签的定义 一.meta 标签分 ...

  7. FSM

    一.状态机简单介绍 软件设计中的状态机概念,一般是指有限状态机(英语:finite-state machine,缩写:FSM)又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和 ...

  8. Why does my ListView scroll to the top when navigating backwards?

    I’ve seen a few people asking this question. They have a page which contains a ListView and when an ...

  9. Smart210---LED驱动

    经过几天的学习,终于linux驱动的基本框架弄清楚了...真的很艰辛,,,不过终于还是熬过来了,虽然还是最基础的,,, 今晚也完成了我第一个linux驱动,,,心里还是有点小兴奋的,哈哈O(∩_∩)O ...

  10. What are the 10 algorithms one must know in order to solve most algorithm challenges/puzzles?

    QUESTION : What are the 10 algorithms one must know in order to solve most algorithm challenges/puzz ...