题目链接:Codeforces 1198F

Description

给出 \(n\) 个数,把它们分成两组使得两组的 \(\gcd\) 均为 \(1\),或判断无解。

Solution

随机的都是好东西

太菜了不会正解只能用随机来骗分。

先把序列打乱。

如果当前数加到第一组使其 \(\gcd\) 变小了就加到第一组,否则加到第二组。

然后卡一下时间。

证明不存在的


Code

#include <cstdio>
#include <cmath>
#include <cstring>
#include <cstdlib>
#include <ctime>
#include <algorithm>const int MAXN = 1e5 + 10;
int n, a[MAXN], id[MAXN], ans[MAXN];int gcd(int x, int y) {return y ? gcd(y, x % y) : x;
}int main() {scanf("%d", &n);for (int i = 1; i <= n; ++i) scanf("%d", &a[i]), id[i] = i;clock_t st = clock();while (clock() - st < 0.4 * CLOCKS_PER_SEC) {std::random_shuffle(id + 1, id + n + 1);int X = 0, Y = 0;for (int i = 1; i <= n; ++i) {int t = gcd(X, a[id[i]]);if (t == X) Y = gcd(Y, a[id[i]]), ans[id[i]] = 2;else X = t, ans[id[i]] = 1;}if (X == 1 && Y == 1) {puts("YES");for (int i = 1; i <= n; ++i) printf("%d%c", ans[i], " \n"[i == n]);return 0;}}puts("NO");return 0;
}

转载于:https://www.cnblogs.com/realSpongeBob/p/11416754.html

Codeforces 1198F相关推荐

  1. CodeForces 375D Tree and Queries

    传送门:https://codeforces.com/problemset/problem/375/D 题意: 给你一颗有根树,树上每个节点都有其对应的颜色,有m次询问,每次问你以点v为父节点的子树内 ...

  2. 「日常训练」Bad Luck Island(Codeforces Round 301 Div.2 D)

    题意与分析(CodeForces 540D) 是一道概率dp题. 不过我没把它当dp做... 我就是凭着概率的直觉写的,还好这题不算难. 这题的重点在于考虑概率:他们喜相逢的概率是多少?考虑超几何分布 ...

  3. 【codeforces 812C】Sagheer and Nubian Market

    [题目链接]:http://codeforces.com/contest/812/problem/C [题意] 给你n个物品; 你可以选购k个物品;则 每个物品有一个基础价值; 然后还有一个附加价值; ...

  4. CodeForces 获得数据

    针对程序的输出可以看见 CodeForces :当输入.输出超过一定字符,会隐藏内容 所以:分若干个程序进行输入数据的获取 1. 1 for (i=1;i<=q;i++) 2 { 3 scanf ...

  5. codeforces水题100道 第二十七题 Codeforces Round #172 (Div. 2) A. Word Capitalization (strings)...

    题目链接:http://www.codeforces.com/problemset/problem/281/A 题意:将一个英文字母的首字母变成大写,然后输出. C++代码: #include < ...

  6. CodeForces 595A

    题目链接: http://codeforces.com/problemset/problem/595/A 题意: 一栋楼,有n层,每层有m户,每户有2个窗户,问这栋楼还有多少户没有睡觉(只要一个窗户灯 ...

  7. codeforces A. Jeff and Digits 解题报告

    题目链接:http://codeforces.com/problemset/problem/352/A 题目意思:给定一个只有0或5组成的序列,你要重新编排这个序列(当然你可以不取尽这些数字),使得这 ...

  8. Codeforces Round #506 (Div. 3)

    Codeforces Round #506 (Div. 3) 实习期间事不多,对div3 面向题解和数据编程了一波 A. Many Equal Substrings 题目链接 A题就是找后缀和前缀重合 ...

  9. Codeforces Round #417:E. FountainsSagheer and Apple Tree(树上博弈)

    Codeforces Round #417:E. FountainsSagheer and Apple Tree(树上博弈) 标签: codeforces 2017-06-02 11:41 29人阅读 ...

最新文章

  1. 谈谈 Java 中自定义注解及使用场景
  2. msyql request quit
  3. 应用进退法确定一维搜索区间_NMR-如何确定官能团含量(MestReC)
  4. 创建Live Rates Plan时Sales Organization无法自动带出来的问题
  5. 在香蕉派 Banana Pi BPI-M1上使用 开源 OxOffice Impress
  6. Java System类console()方法及示例
  7. java邮箱_java发送邮件(qq邮箱)
  8. Mysql中用between...and...查询日期时注意事项
  9. 抢疯了!字节、美团《人人都要学的架构思维》完整版PDF开放下载!
  10. 4005基于邻接表的顶点的删除(C++,附思路)
  11. PHP去除顽固空格和编码问题
  12. 【转载】在MySQL登录时出现Access denied for user 'root'@'localhost' (using password: YES) 拒绝访问,并可修改MySQL密码...
  13. 使用LibreOffice的Draw取代Microsoft visio
  14. 将 .json 格式 转换成 .xml格式
  15. LoadRunner压力测试案列
  16. Shell 通过sed替换文件字符串
  17. OpenCV:详解阈值分割的处理
  18. 公告栏模板php代码,destoon调用自定义模板及样式的公告栏
  19. 【项目实践】YOLO V4万字原理详细讲解并训练自己的数据集(pytorch完整项目打包下载)...
  20. Opencv 基础(四):使用OpenCV进行图像旋转和平移

热门文章

  1. Java 第 21 课 1200. 最小绝对差 539. 最小时间差
  2. 营改增后计算机 维护费税率,“营改增”后各行业税率及征收率一览-中华会计网校...
  3. 小二读西游-法术学习哪家强,三星洞,须菩提
  4. 人工智能的编年史——从开始到现在
  5. trac插件---due date
  6. AIX 挂载iscsi存储
  7. 3ds Max 2018--点击“输入序列号”框就闪退
  8. Problem H: 藏头诗
  9. 熊猫烧香案主犯编出杀毒程序
  10. 哪款远程控制软件可以远程玩游戏?