课表排列
作者:互联网
P5823 【L&K R-03】课表的排列 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
- 直接先输出所有的数,再输出奇数再输出偶数就是答案
- 证明:
- 对于奇数,前n个数中的奇数和后面的奇数两两之间的位置差值刚好构成公差为1的等差数列,对于偶数同理
- 奇数列和偶数列拼接起来,拼接后刚好是公差为1的等差数列
// https://www.luogu.com.cn/problem/P5823
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define MAX 10000001
int main()
{
int n;
cin >> n;
for (int i = 1; i <= n; i++)
{
printf("%d ", i);
}
for (int i = 1; i <= n; i += 2)
{
printf("%d ", i);
}
for (int i = 2; i <= n; i += 2)
{
printf("%d ", i);
}
}
标签:偶数,排列,cn,奇数,int,long,课表 来源: https://www.cnblogs.com/Wang-Xianyi/p/16574663.html