openjudge 水题 方块转换
来源:互联网 发布:js 中文编码 编辑:程序博客网 时间:2024/05/17 08:47
Transformations 方块转换
- 查看
- 提交
- 统计
- 提问
- 总时间限制:
- 1000ms
- 内存限制:
- 1000kB
- 描述
- 一块N x N(1<=N<=10)正方形的黑白瓦片的图案要被转换成新的正方形图案。写一个程序来找出将原始图案按照以下列转换方法转换成新图案的最小方式:
1:转90度:图案按顺时针转90度。
2:转180度:图案按顺时针转180度。
3:转270度:图案按顺时针转270度。
4:反射:图案在水平方向翻转(以中央铅垂线为中心形成原图案的镜像)。
5:组合:图案在水平方向翻转,然后再按照1到3之间的一种再次转换。
6:不改变:原图案不改变。
7:无效转换:无法用以上方法得到新图案。
如果有多种可用的转换方法,请选择序号最小的那个。 - 输入
- 第一行: 单独的一个整数N。
第二行到第N+1行: N行每行N个字符(不是“@”就是“-”);这是转换前的正方形。
第N+2行到第2*N+1行: N行每行N个字符(不是“@”就是“-”);这是转换后的正方形。 - 输出
- 单独的一行包括1到7之间的一个数字(在上文已描述)表明需要将转换前的正方形变为转换后的正方形的转换方法。
- 样例输入
3@-@---@@-@-@@----@
- 样例输出
1
#include<stdio.h>#include<string.h>void copy(char b[][10],char a[][10],int n){int i,j;for(i=0;i<n;i++){for(j=0;j<n;j++){ b[i][j]=a[i][j]; } }}void change1(char a[][10],char b[][10],int n){int i,j;for(i=0;i<n;i++){for(j=0;j<n;j++){b[j][n-1-i]=a[i][j];}}}void change2(char a[][10],int n){int i,j,k;char temp;for(i=0;i<n;i++){for(j=0,k=n-1;j<k;j++,k--){ temp = a[i][j]; a[i][j]=a[i][k]; a[i][k] = temp;}}}int same(char a[][10],char b[][10],int n){int i,j;for(i=0;i<n;i++){for(j=0;j<n;j++){if(b[i][j]!=a[i][j]){return 0;}}}return 1;}int main(){int n,i,j,f,k;char a[10][10];char b[10][10];char c[10][10];scanf("%d",&n);getchar();for(i=0;i<n;i++){for(j=0;j<n;j++){scanf("%c",&a[i][j]);}getchar();}for(i=0;i<n;i++){for(j=0;j<n;j++){scanf("%c",&b[i][j]);}getchar();} switch(1){ case 1: change1(a,c,n); if(same(c,b,n)){ printf("1\n"); break;} case 2: for(i=0;i<2;i++){ change1(a,c,n); copy(a,c,n);}if(same(b,c,n)){ printf("2\n"); break;} case 3: for(i=0;i<3;i++){ change1(a,c,n); copy(a,c,n);}if(same(b,c,n)){ printf("3\n");break;} case 4: change2(a,n); if(same(a,b,n)){ printf("4\n"); break;} case 5: change2(a,n); for(i=0;i<3;i++){ change1(a,c,n); copy(a,c,n); if(same(b,c,n)){ printf("5\n"); break; }} case 6: if(same(a,b,n)){ printf("6\n"); break;} case 7: printf("7\n"); break;}return 0;}
0 0
- openjudge 水题 方块转换
- Transformations方块转换
- USACO 方块转换
- Transformations 方块转换
- P1205 方块转换
- openjudge树的转换
- USACO1.2.2 Transformations (方块转换)
- [USACO1.2.2]方块转换 Transformations
- USACO 1.2 方块转换 (枚举)
- [USACO1.2]方块转换 Transformations
- codevs1287方块转换(数学转换)
- 【几何翻转】Transformations 方块转换(Usaco_Training 1.2)
- USACO 1.2.2 Transformations 方块转换
- 【USACO1.2_2】★Transformations 方块转换
- USACO——Transformations 方块转换
- 【USACO题库】1.2.2 Transformations方块转换
- USACO 1.2 方块转换
- 【USACO题库】1.2.2 Transformations方块转换
- HT349IntersectionOfTwoArray
- 无底色 无背景 logo 图标
- how to remove 1px line at UINavigationBar
- STM32用SysTick来做定时器
- BinarySearch小总结
- openjudge 水题 方块转换
- openjudge水题 翻转诗句
- Task Scheduler I & II
- mybatis-XMLMapperEntityResolver 找对应的dtd文件
- 莫等闲,白了少年头,空悲切
- 【非常高%】【codeforces 733B】Parade
- 【25.47%】【codeforces 733D】Kostya the Sculptor
- #早安,努力#11.01
- 使用注解的spring mvc