題目1470:調整方陣時間限制:1 秒 內存限制:128 兆 特殊判題:否 提交:11 解決:6 題目描述: 輸入一個N(N<=10)階方陣,按照如下方式調整方陣: 1.將第一列中最大數所在的行與第一行對調。 2.將第二列中從第二行到第N行最大數所在的行與第二行對調。 依此類推... N-1.將第N-1列中從第N-1行到第N行最大數所在的行與第N-1行對調。 N.輸出這個方陣 輸入: 包含多組測試數據,每組測試數據第一行為一個整數N,表示方陣的階數. 接下來輸入這個N階方陣. 輸出: 調整後的方陣 樣例輸入: 4 3 6 8 7 6 7 5 3 8 6 5 3 9 8 7 2樣例輸出: 9 8 7 2 6 7 5 3 3 6 8 7 8 6 5 3來源: 2011年西北工業大學計算機研究生機試真題 [cpp] /********************************* * 日期:2013-2-25 * 作者:SJF0115 * 題號: 九度OJ 題目1470:調整方陣 * 來源:http://ac.jobdu.com/problem.php?pid=1470 * 結果:AC * 來源:2011年西北工業大學計算機研究生機試真題 * 總結: **********************************/ #include<stdio.h> #include<limits.h> #include<string.h> int Matrix[11][11]; int main(){ int i,j,N,Max,MaxIndex; while(scanf("%d",&N) != EOF){ //輸入 for(i = 0;i < N;i++){ for(j = 0;j < N;j++){ scanf("%d",&Matrix[i][j]); } } for(j = 0;j < N;j++){ //找每列的最大數及其下標 Max = INT_MIN; for(i = j;i < N;i++){ if(Matrix[i][j] > Max){ Max = Matrix[i][j]; MaxIndex = i; } } //對換 int temp; if(MaxIndex != j){ for(i = 0;i < N;i++){ temp = Matrix[j][i]; Matrix[j][i] = Matrix[MaxIndex][i]; Matrix[MaxIndex][i] = temp; } } } //輸出 for(i = 0;i < N;i++){ for(j = 0;j < N-1;j++){ printf("%d ",Matrix[i][j]); } printf("%d\n",Matrix[i][j]); } } return 0; } /********************************* * 日期:2013-2-25 * 作者:SJF0115 * 題號: 九度OJ 題目1470:調整方陣 * 來源:http://ac.jobdu.com/problem.php?pid=1470 * 結果:AC * 來源:2011年西北工業大學計算機研究生機試真題 * 總結: **********************************/ #include<stdio.h> #include<limits.h> #include<string.h> int Matrix[11][11]; int main(){ int i,j,N,Max,MaxIndex; while(scanf("%d",&N) != EOF){ //輸入 for(i = 0;i < N;i++){ for(j = 0;j < N;j++){ scanf("%d",&Matrix[i][j]); } } for(j = 0;j < N;j++){ //找每列的最大數及其下標 Max = INT_MIN; for(i = j;i < N;i++){ if(Matrix[i][j] > Max){ Max = Matrix[i][j]; MaxIndex = i; } } //對換 int temp; if(MaxIndex != j){ for(i = 0;i < N;i++){ temp = Matrix[j][i]; Matrix[j][i] = Matrix[MaxIndex][i]; Matrix[MaxIndex][i] = temp; }www.2cto.com } } //輸出 for(i = 0;i < N;i++){ for(j = 0;j < N-1;j++){ printf("%d ",Matrix[i][j]); } printf("%d\n",Matrix[i][j]); } } return 0; }