CodeForces 414A Mashmokh and Numbers(模拟)
来源:互联网 发布:l300清零软件 编辑:程序博客网 时间:2024/06/12 00:49
题目大意:给出两个整数n和k,找出n个不同的数。如果n为偶数,gcd(a1,a2)+gcd(a3,a4)+……+gcd(an-1,an)=k;如果n为奇数,gcd(a1,a2)+gcd(a3,a4)+……+gcd(an-2,an-1)=k。
比赛的时候一直在看其他的题,没看这道题,其实这题也很简单的。
分析:因为每两个数得出一个数,设a=n/2,
如果a>k,即每两个数的最大公约数都为1时都不能满足题意,输出-1;如果k=0,且n>=2时,同样输出-1。
如果a=k,那么只要使每一组的最大公约数为1即可。
如果a<k,令a-1组的最大公约数为1,第一组的最大公约数为k-a+1即可。
#include<stdio.h>int main(){ int n, k, i, j; while(~scanf("%d%d",&n,&k)) { int a = n / 2; if(a > k || (a == 0 && k != 0)) printf("-1\n"); else if(a == k) { for(i = 1; i <= n; i++) { if(i > 1) printf(" "); printf("%d", i); } printf("\n"); } else { int tmp = k - a + 1; printf("%d %d", tmp, tmp*2); for(i = tmp * 2 + 1, j = 1; j < a; i += 2, j++) printf(" %d %d",i, i+1); if(n % 2 == 1) printf(" %d", i); printf("\n"); } } return 0;}
0 0
- CodeForces 414A Mashmokh and Numbers(模拟)
- CodeForces 414A Mashmokh and Numbers(模拟)
- codeforces 414A Mashmokh and Numbers 模拟题
- Codeforces 414A Mashmokh and Numbers(构造)
- CodeForces 414A Mashmokh and Numbers
- CodeForces 414A Mashmokh and Numbers
- A. Mashmokh and Numbers
- A. Mashmokh and Numbers
- Codeforces 414A Mashmokh and ACM(dp)
- codeforces#240_div2_C Mashmokh and Numbers
- Codeforces 415A Mashmokh and Lights(水题)
- CodeForces 415A Mashmokh and Lights
- Codeforces Round #240 (Div. 2) C. Mashmokh and Numbers
- Codeforces Round #240 (Div. 2) Mashmokh and Numbers
- CodeForces 414B Mashmokh and ACM (DP)
- Codeforces 414B Mashmokh and ACM(DP)
- CodeForces 414 C.Mashmokh and Reverse Operation(归并排序)
- CodeForces 414 C. Mashmokh and Reverse Operation
- 【Hadoop学习笔记】安装配置
- 广东房地产成交面积两年首次出现下降 房协呼吁限购退出
- SVN使用
- 关于I2C和SPI总线协议
- Nginx反向代理Nodejs – log4js日志IP显示错误
- CodeForces 414A Mashmokh and Numbers(模拟)
- ubuntu Security配置初步学习
- 寻找无线的干扰.............
- 表格相对引用和绝对引用及相互切换(复制单元格函数公式保持不变)
- dll 中定义的单例类如何让外部使用
- Qt 将一个Widget(子)从某个Widget(父)中移除的方法
- 清软国际具体要求及事项
- xp jdk7环境下利用webView调用网页android
- Flex做成Map类型