Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence 构造
来源:互联网 发布:python np.max 编辑:程序博客网 时间:2024/05/17 06:19
题意:
有一段序列,对他的所有的子序列的gcd放入set里面,然后把这个set给你,问是否合法,若合法,把原序列构造出来
思路:
开始我想错了,以为任意的连续子序列的gcd一定存在于set中,其实不然,例如原序列(2,12,2,18)-》(2,12,18)
但是我们能确定的是,对于给定的set,只要最小的那个数是所有数的因子,那么我们就可以构造一个满足条件的序列也就是原序列;
把最小的那个数插到给定序列中间就行了;
#include<iostream>#include<algorithm>#include<cstdio>#include<cstdlib>#include<cstring>#include<string>#include<cmath>#include<set>#include<queue>#include<stack>#include<map>#define PI acos(-1.0)#define in freopen("in.txt", "r", stdin)#define out freopen("out.txt", "w", stdout)using namespace std;typedef long long ll;typedef unsigned long long ull;const int maxn = 1000 + 7, maxd = 670000 + 7, mod = 1e9 + 7;const int INF = 0x7f7f7f7f;int n;ll a[maxn];int main() { scanf("%d", &n); for(int i = 1; i <= n; ++i) { scanf("%lld", &a[i]); } int i; for(i = 1; i <= n; ++i) if(a[i] % a[1]) break; if(i <= n) puts("-1"); else { printf("%d\n%lld", n*2-1, a[1]); for(int i = 2; i <= n; ++i) printf(" %lld %lld", a[1], a[i]); } return 0;}
阅读全文
1 0
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence 构造
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence (构造 贪心)
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence(构造,思路)
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence(构造)
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence 构造
- Codeforces 894C:Marco and GCD Sequence(构造)
- codeforces 864C Marco and GCD Sequence
- codeforces C. Marco and GCD Sequence
- codeforces-894C Marco and GCD Sequence
- Codeforces 894C C. Marco and GCD Sequence
- Marco and GCD Sequence
- CF-Marco and GCD Sequence
- Codeforces894C Marco and GCD Sequence
- Codeforces Round #285 (Div. 2) C. Misha and Forest 构造
- 读取txt,分类训练集和测试集
- CKG10-高性能高可用Yii2.0电商平台 仿京东商城 高级组件 MySQL LVS
- java的mvc模式
- 第十二周 项目(5)
- Spark RDD知识点汇总
- Codeforces Round #447 (Div. 2) C. Marco and GCD Sequence 构造
- yaf--Hello World
- 一维卷积详细解释
- Java NIO初探(一)
- 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- 十、硬盘驱动程序
- Android开发中实现pulltorefresh刷新,banner实现无线轮播
- 最长公共子串问题
- Protocol Buffers (protobuf)简介