openjudge 計算概論 陣列練習 錯誤偵測

2021-06-20 08:57:10 字數 1082 閱讀 5235

總時間限制: 

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中 輸入輸出單元和記憶體等都是通過主機板連線在一起。輸入輸出單元 觸控螢幕,滑鼠鍵盤,螢幕,印表機,揚聲器,投影儀等。記憶體單元 硬碟,軟盤,光碟,磁帶等。系統單元 顯示卡,介...