2020 icpc 南京 K Co-prime Permutation 思维题
admin
2024-02-20 18:18:26

链接:https://ac.nowcoder.com/acm/contest/10272/K?&headNav=acm

题目描述

Kotori is very good at math (really?) and she loves playing with permutations and primes.

One day, she thinks of a special kind of permutation named k co-prime permutation. A permutation p1,p2,⋯ ,pn​ of n is called a k co-prime permutation of n if there exists exactly k integers i such that 1≤i≤n and gcd(pi,i)=1, where gcd(x,y) indicates the greatest common divisor of x and y.

Given nnn and k, please help Kotori construct a k co-prime permutation of n or just report that there is no such permutation.

Recall that a permutation of nnn is a sequence of length nnn containing all integers from 1 to n.

输入描述:

There is only one test case in each test file.The first and only line contains two integers n and k (1≤n≤10^6, 0≤k≤n).

输出描述:

Output one line containing nnn integers p1,p2,⋯ ,pn separated by one space, indicating the permutation satisfying the given constraints. If no such permutation exists output "-1" (without quotes) instead. If there are multiple valid answers you can print any of them.Please, DO NOT output extra spaces at the end of each line, otherwise your answer may be considered incorrect!

示例1

输入

5 3

输出

1 4 5 2 3

示例2

输入

1 0

输出

-1

 题解:思维题 我真是菜 

让前k个数与下标互质就行了 然后后面的数与下标相同 (两个相同的数是不互质的)

#include 
#include 
#include 
#include 
#include 
#include using namespace std ;
const int N = 1e6+10;
int n  ;
int k ;
int a[N] ;int main()
{cin >> n >> k ;if(k==0) {cout << "-1" ; return 0;}for(int i = 2 ; i<= k ; i++) a[i-1]=i;a[k]=1;for(int i = k+1 ; i<=n ; i++) a[i]=i;for(int i = 1 ; i <= n ; i++) {cout << a[i] ;if( i!= n ) cout << " " ;}return 0;}

相关内容

热门资讯

上海旅游节大巡游花车阵容抢先看... 2026上海旅游节大巡游9月12日外滩启幕,21辆全新主题花车携手21支境内外表演方队联袂登场,邀你...
原创 8... 上周门诊来了位 62 岁的张阿姨,得糖尿病快五年了,平时管嘴特别严,糖果、点心、甜饮料一概不碰,连水...
原创 餐... 2026年9月8日晚,南京浦口区泰冯路29号,墨语江南·阿婆菜餐厅户外帐篷里,灯火温润,其间还天降喜...
原创 它... 人到中年肝肾精血慢慢耗损,容易腰膝酸软、头晕眼花、精神疲惫。黄精性平,擅长补肝肾、益精血,搭配不同食...
同样卖奶茶,为何古茗赚了15亿... 出品/联商专栏 撰文/老刀 编辑/蔡建桢 今年上半年,蜜雪、古茗、霸王茶姬、茶百道、沪上阿姨全部盈利...