pku2825.cpp

来自「这是ACM 方面的资料 是PKU的 北京大学的出来的」· C++ 代码 · 共 53 行

CPP
53
字号
#include <stdio.h>

void Solve(int n)
{
	int i, u1, u2, p1, p2, cnt;
	if (n == 1)
	{
		printf("1\n");
		return;
	}
	if (n == 4)
	{
		printf("3 2 4 1\n");
		return;
	}
	if (n % 4 > 1)
	{
		printf("0\n");
		return;
	}
	u1 = n / 4 * 3 + n % 4;
	u2 = n / 2 + n % 4;
	p1 = n / 4 * 3;
	p2 = n;
	cnt = n;
	for (i = 1; i < n; i++)
	{
		if (i == p1)
		{
			printf("%d ", u1);
			continue;
		}
		while (cnt == u1 || cnt == u2)
		{
			cnt--;
		}
		printf("%d ", cnt--);
//		scanf("%*c");
	}
	printf("%d\n", u2);
}

int main()
{
	int n;
	while (scanf("%d", &n) != -1)
	{
		Solve(n);
	}
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?