51nod 1179 最大的最大公约数 (打表计数法)
题目:
考虑清楚就简单了,我们把每个数的因子计数。
两个数的公约数就是计数超过2的数,然后找到最大的那个就好了。
计算每个数的素因子,记得sqrt(),不然会超时。
打表计数法时间复杂度O(n*sqrt(n))。
代码:
#include <iostream> #include <algorithm> #include <map> #include <vector> #include <set> #include <math.h> #include <queue> #include <assert.h> #include <stdio.h> #include <stdlib.h> #include <string> using namespace std; typedef long long ll; #define INF 2147483647int n; int a[1000010]; int main(){cin >> n;int key;int ans = 1;while(n--){cin >> key;int p = sqrt(key);for(int i = 1;i <= p; i++){if(key%i == 0){a[i]++;a[key/i]++; // cout << i << endl; }}}for(int i = 2;i <= 1000000; i++){if(a[i] >= 2){ans = i;}}cout << ans << endl;return 0; }
转载于:https://www.cnblogs.com/zhangjiuding/p/7906498.html
51nod 1179 最大的最大公约数 (打表计数法)相关推荐
- 51Nod 1179 最大的最大公约数
1179 最大的最大公约数 给出N个正整数,找出N个数两两之间最大公约数的最大值.例如:N = 4,4个数为:9 15 25 16,两两之间最大公约数的最 ...
- 1179:最小公倍数和最大公约数
描述 从键盘输入两个正整数,求这两个正整数的最小公倍数和最大公约数,并输出. 输入 输入包括一行. 两个以空格分开的正整数. 输出 两个整数的最小公倍数和最大公约数. 样例输入 6 8 样例输出 24 ...
- 所有表单对象_Laravel 表单方法伪造与 CSRF 攻击防护
1.表单方法伪造 有时候,我们可能需要手动定义发送表单数据所使用的 HTTP 请求方式,而 HTML 表单仅支持 GET 和 POST 两种方式,如果要使用其他的方式,则需要自己来定义实现. HTTP ...
- 【转载】邻接表表示法
图的邻接表表示法 图的邻接表表示法类似于树的孩子链表表示法.对于图G中的每个顶点v i ,该方法把所有邻接于v i 的顶点v j 链成一个带头 结点的单链表,这个单链表就称为顶点v i 的邻接表(Ad ...
- 有向图的邻接表表示法
图的邻接表表示法类似于树的孩子链表表示法.对于图G中的每个顶点vi,该方法把所有邻接于vi的顶点vj链成一个带头结点的单链表,这个单链表就称为顶点vi的邻接表(Adjacency List). 1. ...
- 51Nod-1011 最大公约数GCD【欧几里得算法】
1011 最大公约数GCD 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 输入2个正整数A,B,求A与B的最大公约数. Input 2个数A,B,中间用空格隔开.(1& ...
- 《数据结构》-图的邻接表表示法(四)
邻接表表示法(链式) 存储定义: 顶点:按编号顺序将顶点数据存储在一维数组中 关联同一顶点的边(以顶点为尾的弧):用线性链表存储 无向图的邻接表 例如,如下无向图 则它的邻接表为 无向图邻接表的特点: ...
- HNUST-OJ-1964- 邻接表表示法
目录 原题复刻: 思想的火花: 代码复刻: 原题复刻: 思想的火花: 1. struct ArcNode //边结点 {此结构体就是每一条链中非头节点储存的信息int adjvex; // //该节 ...
- 编写函数求两个数的最大公约数,采用递归法计算两数的最大公约数。
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 题目: [实验案例3:函数的递归调用] 编写函数求两个数的最大公约数,采用递归法计算两数的最大公约数. [实验指导] 分析:m.n为两 ...
最新文章
- Oracle-trigger触发器解读
- 大页(Huge Page)简单介绍
- Visual Studio 2005 快捷键
- TypeError: only integer scalar arrays can be converted to a scalar index一例
- pymysql 增删改 查 索引
- 企业级账号 版本更新总结
- Visual Paradigm(一)简介和软件初步
- 面向对象编程----6大设计原则
- 文件和目录操作命令(19 个)--14.dirname
- 分享改进 高性能通用分表归档存储过程测试结果更新
- twig模板基本学习
- Java网络编程从入门到精通(24):实现HTTP断点续传下载工具(附源代码)
- Spring学习14-源码下载地址
- eharts 中国地图添加城市(散点图实现,含获取城市坐标、图片转base64、自定义散点样式)
- stdio.h 之 printf
- python连接FTP服务器
- vscode编写html代码颜色高亮,vs code配色与语法高亮自定义,vscode配色高亮
- 如何用计算机克数和斤换算,克数换算斤计算器(克千克斤公斤计算器)
- web网页设计实例作业 :美食坊网站设计——美食坊美食购物主题(15页) HTML+CSS+JavaScript
- java展示图片_Java中显示图片的方法