#16143: 請問這題我哪裡解錯了......


ck1070878@gl.ck.tp.edu.tw (124_01_王政元 ck1070878)

學校 : 不指定學校
編號 : 88923
來源 : []
最後登入時間 :
2018-11-27 23:41:26
b266. 矩陣翻轉 -- 2016 APCS 實作題第二題 | From: [111.243.6.99] | 發表日期 : 2018-11-27 23:44

# include <stdio.h>
int main()
{
int R,C,M,temp;
scanf("%d%d%d", &R, &C, &M);
int arr[10][10];
int list[10][10];
for (int x=0;x<R;++x){ // x,y為arr的位置
for (int y=0;y<C;++y){
scanf("%d", &arr[x][y]);
}
}
int data[10];
for (int i=0;i<M;++i){ // i : data數列中的代號位置
scanf("%d", &data[i]);
}
for (int i=0;i<M;++i){ // i : data數列中的代號位置
if (data[i]==1){
for (int p=0,a=R--;p<R && a>=0;++p,--a){
for (int q=0,b=0;q<C && b<C;++q,++b){
list[a][b]=arr[p][q];
arr[p][q]=list[a][b];
}
}
}
else if (data[i]==0){
for (int f=R--;f>=0;--f){
for (int g=0;g<C;++g){
int u=R--;
list[f][g]=arr[g][u=u-f];
arr[g][u=u-f]=list[f][g];
}
}
temp=R;
R=C;
C=temp;
}
}
printf("%d %d\n", R,C);
for (int col=0;col<R;++col){
for (int row=0;row<C;++row){
printf("%d ", list[col][row]);
}
printf("\n");
}
return 0;
}

 
ZeroJudge Forum