2012年每周一赛第三场第一题。就是一个折来折去的问题,爱怎么折怎么折,反正折回去就好。
Run Time: 0.02sec
Run Memory: 304KB
Code Length: 916Bytes
SubmitTime: 2012-04-01 21:32:48
// Problem#: 5034
// Submission#: 1300019
// The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License
// URI: http://creativecommons.org/licenses/by-nc-sa/3.0/
// All Copyright reserved by Informatic Lab of Sun Yat-sen University
#include <cstdio>
using namespace std;
int main()
{
int N;
char grid[ 100 ][ 101 ];
int i, j;
while ( scanf( "%d", &N ) && N ) {
for ( i = 0; i < N; i++ ) {
getchar();
scanf( "%s", &grid[ N + i ][ N ] );
}
for ( i = N; i < 2 * N; i++ ) {
for ( j = N; j < i; j++ )
grid[ j ][ i ] = grid[ i ][ j ];
}
for ( i = N; i < 2 * N; i++ ) {
for ( j = 0; j < N; j++ )
grid[ i ][ j ] = grid[ i ][ 2 * N - 1 - j ];
}
for ( i = 0; i < N; i++ ) {
for ( j = 0; j < 2 * N; j++ )
grid[ i ][ j ] = grid[ 2 * N - 1 - i ][ j ];
}
for ( i = 0; i < 2 * N; i++ ) {
for ( j = 0; j < 2 * N; j++ )
printf( "%c", grid[ i ][ j ] );
printf( "\n" );
}
printf( "\n" );
}
return 0;
}