1031. Hello World for U (20)

http://www.patest.cn/contests/pat-a-practise/1031


//8:44
#include <iostream>
#include <string>

using namespace std;
int n1,n2,n3;
int N,maxk;
void is(){
	for(int k = n2;k>=1;k--){
		if( (2*k+n2-2) == N ){
			if(maxk < k){
				maxk = k;
			}
		}
	}
}
int main(){
	
	string s;
	cin>>s;
	N = s.size();
	for(n2 = 3;n2 <= s.size();n2++){
		is();
	}
	n1 = n3 = maxk;
	n2 = N - n1 - n3 + 2;
	int i,k;
	for(i = 0,k=N-1;i < n1-1;i++,k--){
		cout<<s[i];
		for(int j = 0;j<n2-2;j++){
			cout<<" ";
		}
		cout<<s[k]<<endl;
	}
	for(;i < n1+n2-1;i++){
		cout<<s[i];
	}
	return 0;
}


你可能感兴趣的:(解题报告,浙大机试)