Codeforces 1154G(枚举)
我预处理\(1e7log(1e7)\)的因数被T掉了,就不敢往这个复杂度想了……无奈去看AC代码
结果怎么暴举gcd剪一剪小枝就接近3s卡过去了!vector有锅(确信
const int maxn = 1e6 + 5, maxa = 1e7 + 5;
int n, a, l, r;
ll lcm = INF;
int f[maxa], s[maxa];
int main() {
	read(n);
	rep(i, 1, n) {
		read(a);
		if (f[a])	s[a] = i;
		else	f[a] = i;
	}
	rep(d, 1, maxa - 5) {
		vector<pii> v;
		for (int j = 1; j * d <= maxa - 5; j++) {
			if (v.size() >= 2)	break;
			if (f[j * d])	v.push_back({j * d, f[j * d]});
			if (s[j * d])	v.push_back({j * d, s[j * d]});
		}
		if (v.size() < 2)	continue;
		ll tmp = (ll)v[0].first / d * v[1].first;
		if (lcm > tmp) {
			lcm = tmp;
			l = v[0].second;
			r = v[1].second;
		}
	}
	if (l > r)	swap(l, r);
	printf("%d %d\n", l, r);
	return 0;
}
Codeforces 1154G(枚举)的更多相关文章
- Codeforces 1154G 枚举
		题意:给你一堆数,问其中lcm最小的一对数是什么? 思路:因为lcm(a, b) = a * b / gcd(a, b), 所以我们可以考虑暴力枚举gcd, 然后只找最小的a和b,去更新答案即可. 数 ... 
- Codeforces 1154G Minimum Possible LCM
		题目链接:http://codeforces.com/problemset/problem/1154/G 题目大意: 给定n个数,在这些数中选2个数,使这两个数的最小公倍数最小,输出这两个数的下标(如 ... 
- codeforces 873E(枚举+rmq)
		题意 有n(n<=3000)个人参与acm比赛,每个人都有一个解题数,现在要决定拿金牌的人数cnt1,拿银牌的人数cnt2,拿铜牌的人数cnt3,各自对应一个解题数区间[d1,c1],[d2,c ... 
- C. Vasily the Bear and Sequence   Codeforces 336C(枚举,思维)
		C. Vasily the Bear and Sequence time limit per test 1 second memory limit per test 256 megabytes inp ... 
- Codeforces 1216E2  枚举位数+二分
		两个二分 枚举位数 #include <bits/stdc++.h> #define MOD 1000000007 using namespace std; typedef long lo ... 
- CodeForces - 748E (枚举+脑洞)
		E. Santa Claus and Tangerines time limit per test 2 seconds memory limit per test 256 megabytes inpu ... 
- Codeforces 965  枚举轮数贪心分糖果  青蛙跳石头最大流=最小割思想  trie启发式合并
		A /*#include<cstring>#include<algorithm>#include<queue>#include<vector>#incl ... 
- 数论(lcm)
		CodeForces - 1154G You are given an array a consisting of n integers a1,a2,…,an . Your problem is to ... 
- Codeforces Round #103 (Div. 2) D. Missile Silos(spfa + 枚举边)
		题目链接:http://codeforces.com/problemset/problem/144/D 思路:首先spfa求出中心点S到其余每个顶点的距离,统计各顶点到中心点的距离为L的点,然后就是要 ... 
随机推荐
- BZOJ 1201 [HNOI2005]数三角形:枚举 + 前缀和
			题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1201 题意: 有一个边长为n的正三角形网格,去掉其中一些线段,问你在这幅图中有多少个三角形 ... 
- 分享知识-快乐自己:IDEA 导入(web)项目并部署到 Tomcat
			IDEA 导入 (WEB)项目并部署到 Tomcat 1):导入 Web 项目 2):首先更改 JDK 环境 右键项目: 第一步:点击 Modules 第二步:点击 Libraries 第三步:点 ... 
- 搭建LoadRunner中的场景(二) 集合点
			Rendezvous: 这个单词来自于法语,军队集合的意思.LoadRunner中是指各虚拟用户在同一时刻完成指定的操作. 一. 集合点设置步骤 1. 在脚本中需要测试并发性能的操作之前加入集合点. ... 
- linux命令学习笔记(47):iostat命令
			Linux系统中的 iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视. 它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况. ... 
- vs2012解决scanf,printf编译出错的问题
			转自http://www.th7.cn/Program/c/201303/127343.shtml 在VS 2012 中编译 C 语言项目,如果使用了 scanf 函数,编译时便会提示如下错误: er ... 
- CSS 浏览器兼容
			1. 兼容 IF <!--[if lte IE 7]> <style type="text/css"> .menu { position:relative ... 
- codevs2189数字三角形w——最优性转化
			题目:http://codevs.cn/problem/2189/ 通过增加一维,将最优性转化为可行性. 代码如下: #include<iostream> #include<cstd ... 
- 如何得到WPF中控件绑定的EventTrigger
			System.Windows.Interactivity.Interaction.GetTriggers(sender as DependencyObject)[0].Actions 
- fabric优先级,进程管理
			fabric在执行一些命令或者脚本的时候,会执行了操作,但是,进程启动失败,google,发现fabric在执行脚本或者进程的时候,加入set -m参数,就可以正常运行了,解释是:"set ... 
- C# 使用 StreamWriter 写入数据
			NetworkStream 类.MemoryStream类 和 FileStream 类都提供了以字节为基本单位的读写方法,但是这种方法首先将待写入的数据转换为字节序列后才能进行读写,当操作的是使用字 ... 
