Codeforces Round #669 (Div. 2) B. Big Vova (枚举)
2024-08-29 21:13:14
题意:有一个长度为\(n\)的序列,你需要对其重新排序,构造一个新数组\(c\),\(c_{i}=gcd(a_{1},...,a{i})\)并且使得\(c\)的字典序最小.
题解:直接跑\(n\)次,每次找一个目前最大的\(gcd\)出来,并标记位置模拟一下就好了.
代码:
int t;
int n;
int a[N],b[N];
int st[N]; int main() {
//ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
t=read();
while(t--){
n=read();
me(st,0,sizeof(st));
for(int i=1;i<=n;++i){
a[i]=read();
}
int now=0;
for(int i=1;i<=n;++i){
int mx=0;
int pos=-1;
for(int j=1;j<=n;++j){
int tmp=__gcd(a[j],now);
if(tmp>mx && !st[j]){
mx=tmp;
pos=j;
}
}
now=mx;
st[pos]=true;
printf("%d ",a[pos]);
}
puts("");
} return 0;
}
最新文章
- JSON字符串和对象 的转换
- win10 用cmake 3.5.2 和 vs 2015 update1 编译 GPU版本(cuda 8.0, cudnn v5 for cuda 8.0)
- WIN7管理工具配置ODBC数据源-系统DSN中无Oracle,Sybase驱动的解决方法
- ES6标准
- A-B 练习【大数减法举例】
- window的git extensions保存密码
- 检测到 LoaderLock:DLL";XXXX";正试图在OS加载程序锁内执行
- VS输入法问题
- [置顶] 小强的HTML5移动开发之路(9)——坦克大战游戏3
- UI控件tag属性和魔法数字的处理
- Properties --- C++读配置信息的类(一)
- 李洪强漫谈iOS开发[C语言-039]-剪刀石头布
- POJ 2409 Let it Bead(polay计数)
- php引用(&;)详解及注意事项
- 阻塞和非阻塞socket的区别
- Linux文件系统学习笔记-1
- 关于const限定符
- C# 几个特殊运算符的理解和Nullable<;T>; 的研究
- CYQ.data 框架结构
- base64转码,解码方法