⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pku1617.cpp

📁 这是ACM 方面的资料 是PKU的 北京大学的出来的
💻 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 + -