前三個測資都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';
}
}