题解:
输入一个整数n。 输入一个字符串。
判断这个字符串能否写成 n 个 重复的字符串。。。
如果能 输出 任一种形式。 如果不能 输出 -1 。
思路:
将字母,数字处理。
26个字母记录每个字母出现的次数。
如果每个字母出现的次数不能被 n 整除 输出 -1
如果能 则输出 一种形式。。。
#include <stdio.h>
char s[1010];
int n, a[26];
int main ( ) {
scanf ( "%d%s", &n, s );
for ( int i = 0; s[i]; ++i ) ++a[s[i] - 'a'];
for ( int i = 0; i < 26; ++i ) {
if ( a[i] % n ) {
printf ( "-1\n" );
return 0;
}
}
for ( int i = 1; i <= n; ++i )
for ( int k = 0; k < 26; ++k )
for ( int j = 1; j <= a[k] / n; ++j )
printf ( "%c", 'a' + k );
printf ( "\n" );
}