51nod 1179 最大的最大公约数 (无耻的打表计数法)
来源:互联网 发布:中国的未来在哪里 知乎 编辑:程序博客网 时间:2024/06/09 17:43
题目:
考虑清楚就简单了,我们把每个数的因子计数。
两个数的公约数就是计数超过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;}
阅读全文
0 0
- 51nod 1179 最大的最大公约数 (无耻的打表计数法)
- 51nod 1179:最大的最大公约数
- 51nod-1179-最大的最大公约数
- 51NOD 1179 最大的最大公约数
- 51nod:1179 最大的最大公约数
- 51nod-1179 最大的最大公约数
- 51nod 1179 最大的最大公约数
- 51nod 1179 最大的最大公约数
- 51Nod 1179 最大的最大公约数
- 51Nod-1179 最大的最大公约数【暴力】
- 51nod 1179 最大的最大公约数
- 51Nod 1179 最大的最大公约数
- 51nod 1179 最大的最大公约数
- 51nod 1179 最大的最大公约数
- 51nod 1179 最大的最大公约数 -Zero
- 51nod 1179 最大的最大公约数
- 51Nod 1179 最大的最大公约数
- 51nod-1179-最大的最大公约数
- Quartz任务调度(1)概念例析快速入门
- hdu 1264 Counting Squares
- 【Scikit-Learn 中文文档】流形学习
- django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法
- 关于C/C++和Java中的j=j++问题
- 51nod 1179 最大的最大公约数 (无耻的打表计数法)
- JVM系列一:2)JVM内存组成
- 项目
- 私有云落地解决方案之openstack高可用(pike版本)-消息队列
- CentOS7上MySQL返回 Too many connections
- Spring Boot ,Spring Security的Filter在Tomcat正常,部署在Weblogic 12c Filter顺序出错,导致拦截权限问题
- 项目
- 一些C++的小程序(一)
- tomcat域名配置