📄 pku1617.cpp
字号:
#include <stdio.h>
#include <string.h>
int main()
{
char key[12];
int val[12], val2[12];
char s[110];
int lk, ls, cs, i, j, k, T_int;
char T_char;
while (gets(key))
{
if (strcmp(key, "THEEND") == 0)
{
break;
}
gets(s);
lk = strlen(key);
ls = strlen(s);
cs = ls / lk;
for (i = 0; i < lk; i++)
{
val[i] = i;
val2[i] = i;
}
for (i = 0; i < lk - 1; i++)
{
for (j = 0; j < lk - 1 - i; j++)
{
if (key[j] > key[j + 1])
{
T_char = key[j];
key[j] = key[j + 1];
key[j + 1] = T_char;
T_int = val[j];
val[j] = val[j + 1];
val[j + 1] = T_int;
}
}
}
for (i = 0; i < lk - 1; i++)
{
for (j = 0; j < lk - 1 - i; j++)
{
if (val[j] > val[j + 1])
{
T_int = val2[j];
val2[j] = val2[j + 1];
val2[j + 1] = T_int;
T_int = val[j];
val[j] = val[j + 1];
val[j + 1] = T_int;
}
}
}
for (i = 0; i < cs; i++)
{
for (j = 0; j < lk; j++)
{
putchar(s[val2[j] * cs + i]);
}
}
printf("\n");
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -