總時間限制:
1000ms
記憶體限制:
65536kb
描述 給出由0和1組成的矩陣,如果矩陣的每一行和每一列的1的數量都是偶數,則認為符合條件。
你的任務就是檢測矩陣是否符合條件,或者在僅改變乙個矩陣元素的情況下能否符合條件。
"改變矩陣元素"的操作定義為0變成1,1變成0。
輸入包含多個測試資料。每個測試資料有多行,第一行為矩陣的大小n(n < 100),以下n行為矩陣的值。
輸入以0結束。
輸出如果矩陣符合條件,則輸出ok
如果矩陣僅改變乙個矩陣元素就能符合條件,則輸出change bit (x,y),其中x和y為該元素的座標
如果不符合以上兩條,輸出corrupt
41 0 1 0
0 0 0 0
1 1 1 1
0 1 0 1
41 0 1 0
0 0 1 0
1 1 1 1
0 1 0 1
41 0 1 0
0 1 1 0
1 1 1 1
0 1 0 1
0樣例輸出
okchange bit (2,3)
corrupt
總的思想:因為只能「僅改變乙個矩陣元素的情況下能否符合條件」,所以橫列上1的個數 只能有乙個是奇數;豎列一樣。這交叉點即為change bit點。
#include
#include
#define m 100
int main()
,count_hor[m]= ,judge1,judge2,x,y;
while(scanf("%d",&n)&&n!=0)}
if(judge1==0&&judge2==0)
printf("ok\n");
else if(judge1==1&&judge2==1)
printf("change bit (%d,%d)\n",x+1,y+1); //注意座標加1;
else
printf("corrupt\n");
}return 0;}
openjudge 計算概論 字串 5 單詞排序
5 單詞排序 檢視 提交 統計 提問 總時間限制 1000ms 記憶體限制 65536kb 描述輸入一行單詞序列,相鄰單詞之間由1個或多個空格間隔,請按照字母順序輸出這些單詞 即按照字串中字母的ascii碼排序,區分大小寫,當首字母相同時,比較第2個字母,依次類推 要求重複的單詞只輸出一次。輸入一行...
Openjudge陣列練習
設有乙個nm方格的棋盤 1 m,n 100 求出該棋盤中包含多少個正方形 多少個長方形 不包括正方形 例如 當n 2,m 3時 正方形的個數有8個 即邊長為1的正方形有6個,邊長為2的正方形有2個。長方形的個數有10個 即21的長方形有4個,12的長方形有3個,31的長方形有2個,3 2的長方形有1...
通訊系統概論 計算機概論
計算機概論 一台計算機一般由五大單元組成 輸入,輸出單元,控制單元,算術邏輯單元和記憶體。其中控制單元和算術邏輯單元在cpu中 輸入輸出單元和記憶體等都是通過主機板連線在一起。輸入輸出單元 觸控螢幕,滑鼠鍵盤,螢幕,印表機,揚聲器,投影儀等。記憶體單元 硬碟,軟盤,光碟,磁帶等。系統單元 顯示卡,介...