Problem Type : String
#include <iostream>
#include<cstring>
#include<cstdio>
#include<math.h>
using namespace std;
char ch[6000000],des[6000000];
int main()
{
int i,j,len=0,p,l,n,k;
// char ch[100000],des[100000];
cin >> n;
getchar();
while(n--)
{
gets(ch);
len = strlen(ch);
// printf("%d",len);
p = sqrt(len);
k=0;
if(len == p*p)
{
for(i=0;i<p;i++)
{
for(j=i;j<len;j+=p)
{
des[k]=ch[j];
k++;
}
}
des[k]='\0';
cout << des << endl;
}
else
{
cout <<"INVALID"<< endl;
}
memset(ch,'\0',sizeof(ch));
memset(des,'\0',sizeof(des));
}
}
#include <iostream>
#include<cstring>
#include<cstdio>
#include<math.h>
using namespace std;
char ch[6000000],des[6000000];
int main()
{
int i,j,len=0,p,l,n,k;
// char ch[100000],des[100000];
cin >> n;
getchar();
while(n--)
{
gets(ch);
len = strlen(ch);
// printf("%d",len);
p = sqrt(len);
k=0;
if(len == p*p)
{
for(i=0;i<p;i++)
{
for(j=i;j<len;j+=p)
{
des[k]=ch[j];
k++;
}
}
des[k]='\0';
cout << des << endl;
}
else
{
cout <<"INVALID"<< endl;
}
memset(ch,'\0',sizeof(ch));
memset(des,'\0',sizeof(des));
}
}
No comments:
Post a Comment