• 题意:有一个长度为\(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;
    }

最新文章

  1. JSON字符串和对象 的转换
  2. win10 用cmake 3.5.2 和 vs 2015 update1 编译 GPU版本(cuda 8.0, cudnn v5 for cuda 8.0)
  3. WIN7管理工具配置ODBC数据源-系统DSN中无Oracle,Sybase驱动的解决方法
  4. ES6标准
  5. A-B 练习【大数减法举例】
  6. window的git extensions保存密码
  7. 检测到 LoaderLock:DLL&quot;XXXX&quot;正试图在OS加载程序锁内执行
  8. VS输入法问题
  9. [置顶] 小强的HTML5移动开发之路(9)——坦克大战游戏3
  10. UI控件tag属性和魔法数字的处理
  11. Properties --- C++读配置信息的类(一)
  12. 李洪强漫谈iOS开发[C语言-039]-剪刀石头布
  13. POJ 2409 Let it Bead(polay计数)
  14. php引用(&amp;)详解及注意事项
  15. 阻塞和非阻塞socket的区别
  16. Linux文件系统学习笔记-1
  17. 关于const限定符
  18. C# 几个特殊运算符的理解和Nullable&lt;T&gt; 的研究
  19. CYQ.data 框架结构
  20. base64转码,解码方法

热门文章

  1. Linux学习笔记 | 配置ssh
  2. MyBatis初级实战之二:增删改查
  3. ctfhub技能树—信息泄露—目录遍历
  4. Docker Hub公共镜像仓库的使用
  5. 环境配置-Java-02-卸载
  6. layui表格前端格式化时间戳字段
  7. vue3.0 composition API
  8. uwsgi 启动django
  9. tcpdump安装与参数详解
  10. Java并发组件三之Semaphore