提示WA后,我把第二个数据下载了下来,自己运行之后,发现我的结果和官方给的结果一样,为什么说我错了呢?
4条回答 默认 最新
关注 #include<cstdio> #include<cstring> #define r(i,a,b) for(register int i=a;i<=b;i++) using namespace std;char c[11][11],mb[11][11],tmp[11][11];int n; inline bool change1(){r(i,1,n)r(j,1,n)if(mb[j][n-i+1]!=c[i][j]) return false;return true;} inline bool change2(){r(i,1,n)r(j,1,n)if(mb[n-i+1][n-j+1]!=c[i][j]) return false;return true;} inline bool change3(){r(i,1,n)r(j,1,n)if(mb[n-j+1][i]!=c[i][j]) return false;return true;} inline bool change4(){r(i,1,n)r(j,1,n)if(mb[i][n-j+1]!=c[i][j]) return false;return true;} inline bool change5(){r(i,1,n)r(j,1,n)c[i][j]=tmp[i][n-j+1];return change1()||change2()||change3();} inline bool change6(){r(i,1,n)r(j,1,n)if(mb[i][j]!=c[i][j]) return false;return true;} signed main() { scanf("%d\n",&n); r(i,1,n) gets(c[i]+1); r(i,1,n) gets(mb[i]+1); if(change1()) return puts("1")&0; if(change2()) return puts("2")&0; if(change3()) return puts("3")&0; if(change4()) return puts("4")&0; memcpy(tmp,c,sizeof(tmp)); if(change5()) return puts("5")&0; memcpy(c,tmp,sizeof(c)); if(change6()) return puts("6")&0; puts("7"); }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 18
悬赏问题
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 对于相关问题的求解与代码
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制