前三個測資都AC 但後兩個WA而且顯示"本題目的測資設定為「不公開」"
請問這要怎麼處理?
1. 陣列int arr[N]的元素索引值是從0~N-1,不是1~N
2. 宣告在main函式裡面的陣列或變數要給初始值,不然那段記憶體空間會存有上一個使用者留下來的資料。
3. 程式碼丟出來請縮排,那樣超級醜。
#include<iostream> using namespace std; int main() { int r, c, m; int i, j, a=0, _; //a一開始有可能不是0,要初始化 cin>>r>>c>>m; int k[m]; if(r>c) a=r; else a=c; int s[a][a], t[a][a]; // 陣列要給初始值 for(i=0; i<a; i++) for(j=0; j<a; j++) s[i][j] = t[i][j] = 0; for(i=0;i<r;i++) { for(j=0;j<c;j++) { cin>>s[i][j]; } } for(_=0;_<m;_++) cin>>k[_]; for(_=m;_--;_) { if(k[_]==0) { //旋轉 for(i=0;i<r;i++) { for(j=0;j<c;j++) { t[c-j-1][i]=s[i][j]; // } } swap(r,c); } else { //翻轉 for(i=0;i<r;i++) { for(j=0;j<c;j++) { t[r-i-1][j]=s[i][j]; // } } } for(i=0;i<r;i++) { for(j=0;j<c;j++) { s[i][j]=t[i][j]; } } } cout<<r<<" "<<c<<endl; for(i=0;i<r;i++) { for(j=0;j<c;j++) { cout<<s[i][j]; if(j!=c) cout<<" "; } cout<<'\n'; } }