poj 2039

题目连接:http://poj.org/problem?id=2039

注意把一维形式改成二维的就好了

代码:

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<string>
#include<iostream>
#include<queue>
#include<stack>
#include<cstdlib>
using namespace std;
int main(){
	char str[200][21],s[201];
	int i,j,n,k,l,m;
	while(scanf("%d",&n),n!=0){
		getchar();
		gets(s);
		l=strlen(s);
		m=l/n;k=0;
		for(i=0;i<m;i++){
			if(i%2==0){
				for(j=0;j<n;j++){
					str[i][j]=s[k];
					k++;
				}
			}
			else{
				for(j=n-1;j>=0;j--){
					str[i][j]=s[k];
					k++;
				}
			}
		}
		for(j=0;j<n;j++)
			for(i=0;i<m;i++)
				printf("%c",str[i][j]);
		printf("\n");
	}
	return 0;
}

你可能感兴趣的:(poj 2039)