[构造] Atcoder AGC001 D. Arrays and Palindrome
来源:互联网 发布:怎样删除淘宝评价 编辑:程序博客网 时间:2024/06/07 03:45
很神奇的构造题…
首先有一个结论,就是当给定数列的奇数的个数大于2的时候,就无解
然后把奇数放在两端,输出
#include <cstdio>#include <iostream>#include <algorithm>using namespace std;const int N=110;int n,m,a[N],b[N];int main(){ freopen("1.in","r",stdin); freopen("1.out","w",stdout); scanf("%d%d",&n,&m); int iodd=0; for(int i=1;i<=m;i++) scanf("%d",&a[i]),iodd+=(a[i]&1); if(m==1){ if(a[1]==1) printf("%d\n1\n%d\n",1,1); else printf("%d\n2\n%d %d\n",a[1],a[1]-1,1); return 0; } if(iodd>2) puts("Impossible"); else{ for(int i=2;i<=m;i++) if(a[i]&1) (a[1]&1)?swap(a[m],a[i]):swap(a[1],a[i]); int t=0; if(a[1]>1) b[++t]=a[1]-1; for(int i=2;i<m;i++) b[++t]=a[i]; b[++t]=a[m]+1; for(int i=1;i<=m;i++) printf("%d ",a[i]); putchar('\n'); printf("%d\n",t); for(int i=1;i<=t;i++) printf("%d ",b[i]); } return 0;}
阅读全文
0 0
- [构造] Atcoder AGC001 D. Arrays and Palindrome
- [AGC001D]Arrays and Palindrome-并查集-构造
- [agc001d]Arrays and Palindrome
- [计数 DP]Atcoder AGC001 E. BBQ Hard
- Atcoder D
- codeforces 748D Santa Claus and a Palindrome (构造+贪心+数据结构)
- atcoder 055D D
- Codeforces D. Professor GukiZ and Two Arrays
- 【jzoj5359】【NOIP2017提高A组模拟9.12】【Arrays and Palindrome】
- atcoder square869120Contest #4 D
- Atcoder 2334 D
- Atcoder ARC 077 D
- AtCoder-RC078 D
- AtCoder 079D Decrease
- atcoder-abc-070D
- atcoder 062D
- Atcoder arc 084 D
- [atcoder] agc86 D
- 异常处理课堂练习2
- Maven学习笔记(四)——Maven的依赖管理
- 关于学习react之前
- 第十四周LeetCode
- LOJ6001 「网络流 24 题
- [构造] Atcoder AGC001 D. Arrays and Palindrome
- 【Scikit-Learn 中文文档】无监督学习: 寻求数据表示
- [计数 DP]Atcoder AGC001 E. BBQ Hard
- javascript闭包
- 函数重载
- 最长递增子序列
- 《我的菜谱》-西红柿炒鸡蛋
- PAX
- HDU 3951 Coin Game(博弈水题)