P9632 [ICPC2020 Nanjing R] K Co-prime Permutation

原题链接

题解

我一开始也很困惑,然后我想要不数据范围小一点我构造看看
n=5

  • k=0 可不可以
  • k=1 可不可以
  • k=2 可不可以

然后根据直觉,gcd(a,a+1) 始终为一,且 一 和任何数的最大公约数都为一,自己和自己的最大公约数还是自己,所以萌生了以下想法
把一后面 k1 个数往前移,然后一填过去

code

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,k;
    cin>>n>>k;

    if(k==0)  printf("-1");
    else
    {
        int i;
        for(i=1;i<k;i++) cout<<i+1<<" ";
        cout<<1;
        if(i!=n)
        {
            i++;
            for(;i<=n;i++) cout<<" "<<i;
        }
    }
    return 0;
}

posted @   纯粹的  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示