CF482A Diverse Permutation
https://www.luogu.com.cn/problem/CF482A
构造
黄色题
构造
黄色题
思路:
对于这道题 我们可以直接构造一个序列满足k
我们首尾交替,肯定能够得到k-1个不同的差值绝对值
然后后面的全部选1,我们的序列就是正确的
#include<cstdio> #include<algorithm> using namespace std; int a[100005],n,k; int main(){ scanf("%d %d",&n,&k); for(int i=1,l=1,r=n;i<=k;++i) { if(i&1) a[i]=l,++l; i&1就等于 i%2==1 else a[i]=r,--r; } for(int i=k+1;i<=n;++i) { if(k&1) a[i]=a[i-1]+1; else a[i]=a[i-1]-1; } for(int i=1;i<=n;++i) printf("%d ",a[i]); return 0; }

浙公网安备 33010602011771号