usaco 1.2 Transformations(模拟)
来源:互联网 发布:数控钻铣床编程 编辑:程序博客网 时间:2024/05/20 13:12
我的做法就是一个一个情况枚举出来
注意计算公式:
( 变换后的矩阵记为C)
顺时针旋转90°:C[i] [j]=A[n-j-1] [i]
(旋转180°和270° 可以多转几个九十度来推)
对称:C[i] [n-j-1]=A[i] [j]
代码有点长 。。。
/*ID: who jayLANG: C++TASK: transform*/#include<stdio.h>bool cmp(char B[][10],char C[][10],int n){ int i,j; bool flag=1; for(i=0; i<n; i++) { if(!flag) break; for(j=0; j<n; j++) if(B[i][j]!=C[i][j]) { return 0; flag=0; break; } } if(flag) return 1;}void rotate(char A[][10],char C[][10],int n){ int i,j; for(i=0; i<n; i++) for(j=0; j<n; j++) C[i][j]=A[n-j-1][i];}void reflect(char A[][10],char C[][10],int n){ int i,j; for(i=0; i<n ; i++) for(j=0; j<n; j++) C[i][n-j-1]=A[i][j];}int main(){ FILE *fin = fopen ("transform.in", "r"); FILE *fout = fopen ("transform.out", "w"); int n,i,j; bool flag; char A[10][10],B[10][10],C[10][10],D[10][10]; fscanf(fin,"%d",&n); flag=1; for(i=0; i<n; i++) fscanf(fin,"%s",A[i]); for(i=0; i<n; i++) fscanf(fin,"%s",B[i]); rotate(A,C,n); if(flag && cmp(B,C,n)) { fprintf(fout,"1\n"); flag=0; } rotate(C,D,n); if(flag && cmp(B,D,n)) { fprintf(fout,"2\n"); flag=0; } rotate(D,C,n); if(flag && cmp(B,C,n)) { fprintf(fout,"3\n"); flag=0; } reflect(A,C,n); if(flag && cmp(B,C,n)) { fprintf(fout,"4\n"); flag=0; } rotate(C,D,n); if(flag && cmp(B,D,n)) { fprintf(fout,"5\n"); flag=0; } rotate(D,C,n); if(flag && cmp(B,C,n)) { fprintf(fout,"5\n"); flag=0; } rotate(C,D,n); if(flag && cmp(B,D,n)) { fprintf(fout,"5\n"); flag=0; } if(flag && cmp(A,B,n)) { fprintf(fout,"6\n"); flag=0; } if(flag) fprintf(fout,"7\n"); return 0;}
0 0
- USACO 1.2 Transformations(模拟)
- usaco 1.2 Transformations(模拟)
- USACO 1.2 Transformations (模拟)
- USACO 1.2.2 Transformations(模拟)
- 【USACO-Chapter1-1.2】【模拟】Transformations
- Transformations(模拟)(USACO)
- usaco Transformations 模拟模拟模拟 ,惨不忍睹
- USACO 1.2 Transformations (用结构体来模拟)
- Usaco 1.2.2 方块变换(Transformations)
- USACO 1.2.2 Transformations
- USACO 1.2-Transformations
- usaco 1.2:Transformations
- USACO 1.2 Transformations
- USACO Section 1.2 Transformations
- [USACO 1.2.2] Transformations
- USACO 1.2.2 Transformations
- USACO 1.2.2 Transformations
- USACO 1.2.2 Transformations
- ExtJs资源库管理平台开发进行中2013.4.14
- WOW十大名言
- 黑马程序员_15MAP集合<K,V>
- ExtJs资源库管理平台开发进行中2013.4.15
- Linux终端ANSI控制码
- usaco 1.2 Transformations(模拟)
- ExtJs资源库管理平台开发进行中2013.4.18
- ExtJs资源库管理平台开发进行中2013.4.22
- Filter(一)——设置SimpleAdapter的Filter从而过滤数据
- 7 Popular OR Mapping Tools for .NET Developers
- ExtJs资源库管理平台开发进行中2013.4.25
- CCTMXTiledMap 介绍
- JVM指令集(指令码、助记符、功能描述) --- 逐渐更新 --- 2011-08-23
- ExtJs资源库管理平台v3精简界面