题意
给出一个4k的字符串,要求把给出的字符串,排列成正方形顺时针输出!(凭记忆回述不一定正确哈,欢迎指正!)
解题:这道题倒是很简单,共4k个字符串,那么每个行k个字符,顺序排列输出即可!
代码如下:
#include<iostream>
#include<string.h>
using namespace std;
int map[11][11];
char str[50];
int main()
{
cin>>str;
int len=strlen(str),j=0;
int k=len/4;
memset(map,0,sizeof(map));
for(int i=0;i<k;i++)
map[0][i]=str[j++];
for(int i=0;i<k;i++)
map[i][k]=str[j++];
for(int i=k;i>0;i--)
map[k][i]=str[j++];
for(int i=k;i>0;i--)
map[i][0]=str[j++];
for(int i=0;i<=k;i++)
{
for(int j=0;j<=k;j++)
{
if(map[i][j])
cout<<(char)map[i][j];
else
cout<<" ";
}
cout<<endl;
}
}
/*
abcdefghijklmnop
*/