这道题其实不难,但是我想复杂了

我想的是把每个数质因数分解,然后每次就枚举每个质因数

来求最小公倍数。

然后想了想这样复杂度将会非常的大,肯定超时
然后看了题解发现不需要质因数分解,直接存因数的个数就好了
c[i]表示i这个因数出现的次数。
然后因为当k越小的时候答案越大(严格来说是大于等于),这是显而易见的,当数少了
之后对最大公因数的限制就越少。
所以我们可以把因数从大到小枚举,来求答案。

#include<cstdio>
#include<cmath>
#include<algorithm>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
#define _for(i, a, b) for(int i = (a); i <= (b); i++)
using namespace std;const int MAXN = 1e6 + 10;
int c[MAXN], n, maxt, m, x;int main()
{scanf("%d", &n);_for(i, 1, n){scanf("%d", &x);maxt = max(maxt, x);m = sqrt(x + 0.5);_for(i, 1, m)if(x % i == 0){c[i]++;if(x != i * i) c[x/i]++;}}int ans = maxt;_for(i, 1, n){while(c[ans] < i) ans--;printf("%d\n", ans);}puts(""); for(int i = maxt; i >= 1; i--) printf("%d\n", c[i]); return 0;
}

转载于:https://www.cnblogs.com/sugewud/p/9819340.html

洛谷 P1414 又是毕业季II (多个数的最大公因数)相关推荐

  1. 洛谷P1414 又是毕业季II 数论

    洛谷P1414 又是毕业季II 数论 d[ i ] 表示这些数中有几个数有因数 i 对于输入的每个数 都sqrt(val) 记录下 然后问你 n个数的最大公约数是多少, 相当于是问你 有 n 个数 有 ...

  2. 简单的数学问题 洛谷 P1414 又是毕业季II

    题意 给出n个数字,询问从中挑出k个数字,最大可能的公共gcd是多少. 题解 k个数的gcd一定出现至少k次. 我们遍历所有的数并对每个数字求它所有的因子,统计各个因子出现的个数. 给定k时,我们的答 ...

  3. P1414 又是毕业季II (80分 python3实现)

    又是毕业季II - 洛谷 """P1414 又是毕业季II(80分 python3实现) https://www.luogu.com.cn/problem/P1414&q ...

  4. 洛谷P1372 又是毕业季IP1414 又是毕业季II[最大公约数]

    P1372 又是毕业季I 题目背景 "叮铃铃铃",随着高考最后一科结考铃声的敲响,三年青春时光顿时凝固于此刻.毕业的欣喜怎敌那离别的不舍,憧憬着未来仍毋忘逝去的歌.1000多个日夜 ...

  5. P1414 又是毕业季II(数论)

    又是毕业季II - 洛谷https://www.luogu.com.cn/problem/P1414 #include <iostream> #include <cstdio> ...

  6. 洛谷 P1372 又是毕业季I

    可能所有的数论题都是这样玄学.... 题目链接:https://www.luogu.org/problemnew/show/P1372 这道题通过暴力的枚举可以发现是不可做的(当然我也不会做) 然后就 ...

  7. 【洛谷习题】又是毕业季II

    题目链接:https://www.luogu.org/problemnew/show/P1414 一开始看到的时候觉得很难,和之前的又是毕业季I相比确实更难了. 仔细做做,发现思路还是可以的,因为in ...

  8. 洛谷P2622 关灯问题II【状压dp+bfs】

    P2622 关灯问题II 题目描述 现有n盏灯,以及m个按钮.每个按钮可以同时控制这n盏灯--按下了第i个按钮,对于所有的灯都有一个效果.按下i按钮对于第j盏灯,是下面3中效果之一:如果a[i][j] ...

  9. 洛谷 - P6292 区间本质不同子串个数(SAM+LCT+线段树)

    题目链接:点击查看 题目大意:给出一个长度为 n 的字符串,再给出 m 次询问,每次询问需要回答区间 [ l , r ] 内有多少个本质不同的字符串 题目分析:首先简化模型,回顾一下如何求解 &quo ...

最新文章

  1. 《简明电路分析》——1.6节简单电路分析实例
  2. Linux应用程序设计之网络基础编程
  3. 配电技术——配电线路系统电气设备详解
  4. angular2、ng2 http get post 传参
  5. XML文件中的CDATA的使用.
  6. 大数据基础技术和应用
  7. margin:auto实现绝对定位元素的水平垂直居中
  8. 最新php常用函数200个,180多个PHP常用函数总结
  9. bcb6通过https接口post数据_Python+Requests+Pytest+YAML+Allure实现接口自动化
  10. 9.Java 面试题整理(UML 方面 )
  11. ShellShock 攻击实验
  12. 关于无法卸载和安装VISIO2010的问题
  13. java c 语言之父_Java之父评价C语言之父:我用尽了形容词
  14. php将日期转为时间戳,php将指定日期转换为时间戳的方法
  15. 武汉理工大学 计算机学院院长,熊盛武:武汉理工大学计算机科学与技术学院院长、教授...
  16. 野火ISO-V2学习
  17. html表单站内搜,网站集成百度、Bing必应搜索引擎,在网页中实现站内全文搜索...
  18. Android第三方框架之学习高德地图SDK-----①集成环境,获取定位信息,地图显示。
  19. 网页+微信小程序UI设计及前端开发(第二周)
  20. C++:在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加 “#include “stdafx.h“”?

热门文章

  1. ios android cpu占用率,iPhone-iOS-从应用程序获取CPU使用率
  2. c语言数据结构将链串里所有值为x的字符删除_redis数据结构与对象到底长什么样?...
  3. luogu4267 TamingtheHerd (dp)
  4. PHP第三天!!黑人无表情 面向对象的特点等等!!
  5. 2016和2017的区别就是昨晚和今早
  6. ScrollView中使用ListView
  7. SiteMesh参考
  8. 面经——嵌入式软件工程师ARM体系与架构相关
  9. mysql getcolumnname_jdbc-mysql基础 ResultSetMetaData getColumnName getColumnLabel 得到列的名字和别名...
  10. c语言一个循环重新输入密码,想程序高手求助--用C语言来编辑一个输入密码的程序...