UVA Magical GCD
Magical GCD
题意:给定一个数列,求一个子列,该子列的最大公约数乘上子列长度的值最大,输出最大值。数列的大小是100000,这些数的大小是1-10^12。
解题思路:一开始想的是用暴力,但数据太大,优化也不行,然后想到是不是dp啊,需要的状态有点多,而且还需要更新前边的,所以也打消了,枚举吧,
枚举谁呢,最大公约数的个数也不算多,就枚举公约数吧,之后看了大神的代码,知道想法是对的,尴尬的是自己没代码实现。但看了大神的代码学到了不少东西
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <math.h>
#include <algorithm>
#include <stdlib.h>
#include <queue>
#include <vector>
#include <map>using namespace std;const int inf = 0x3f3f3f3f;
const int Max = 440;
typedef long long LL;LL maxx, x;
int main()
{int K, i, n;scanf("%d", &K);while(K--){scanf("%d", &n);maxx = 0;map<LL, LL>ma;map<LL, LL>::iterator it, pos;for(i = 1; i <= n; i++){cin>>x;for(it = ma.begin(); it != ma.end(); it++){if(__gcd(it->first, x) != it->first){if(ma[__gcd(it->first, x)] == 0)ma[__gcd(it->first, x)] = it->second;pos = it++;ma.erase(pos);it--;}}if(ma[x] == 0){ma[x] = i;}for(it = ma.begin(); it != ma.end(); it++){maxx = max(maxx, (i - it->second+1)*it->first);//printf("%d %d\n", it->first, it->second);}}cout<<maxx<<endl;}return 0;
}
UVA Magical GCD相关推荐
- Magical GCD
Description: 对于一个由正整数组成的序列, Magical GCD 是指一个区间的长度乘以该区间内所有数字的最大公约数.给你一个序列,求出这个序列最大的 Magical GCD. INPU ...
- UVa 1642 (综合) Magical GCD
题意: 给出一个数列,求一个连续的子序列,使得MGCD(i, j) = 该子序列的长度(j-i+1) × 子序列的gcd 最大,并输出这个最大值. 分析: 感觉可能要用优先队列,但貌似也用不上. 但 ...
- UVa 11388 - GCD LCM
题目大意:给出两个数的最大公约数G和最小公倍数L,求出这两个数. 根据a*b = GCD * LCM,然后枚举判断就好了. 1 #include <cstdio> 2 typedef un ...
- UVA 12716 GCD XOR(数论+枚举+打表)
题意:给你一个N,让你求有多少组A,B, 满足1<= B <= A <= N, 且 gcd(A,B) = A XOR B. 思路:首先我们能够得出两个结论: A-B > ...
- UVa 11889 (GCD) Benefit
好吧,被大白书上的入门题给卡了.=_=|| 已知LCM(A, B) = C,已知A和C,求最小的B 一开始我想当然地以为B = C / A,后来发现这时候的B不一定满足gcd(A, B) = 1 A要 ...
- UVA 11426 GCD - Extreme (II) (欧拉函数)
题目传送门:点击打开链接 假设a.b(a<b)互质,那么gcd(a,b)=1,这样当i循环到a.j循环到b时就会向结果中+1,而i循环到2*a.j循环到2*b时就会向结果中+2(gcd(2*a, ...
- kuangbin带你飞专题合集
题目列表 [kuangbin带你飞]专题一 简单搜索 [kuangbin带你飞]专题二 搜索进阶 [kuangbin带你飞]专题三 Dancing Links [kuangbin带你飞]专题四 最短路 ...
- 算法学习经典例题整理
陆续会对本篇博客进行更新! 搜索:https://vjudge.net/contest/292597 区间DP:https://vjudge.net/contest/293892 树状背包:https ...
- problem solving automation
分工一定要明确啊啊啊啊啊 Nero 数据结构 图论 DP 博弈 JayYe 数论 DP 模拟搜索 博弈 wuyiqi 数论 数据结构 图论 字符串 模拟搜索 几何 20 ...
最新文章
- SpringBoot项目打包war部署到服务器去掉项目名所遇到的坑
- 美智库发布报告:《美国在人工智能时代的行动蓝图》
- WPF/E 2007年2月CTP发布了
- 对象与内存控制1---实例变量和类变量
- 《C++ Primer》13.1.2节练习
- python元组赋值给变量,Python的赋值
- React、Angular、Vue 框架比较
- MYSQL SHELL 到底是个什么局 剑指 “大芒果”
- iterm2自动补全_【超级实用】Iterm2 + ohmyzsh 打造强大的终端编辑器
- 'GO' 附近有语法错误问题,我真是无语~
- 开源数字媒体资产管理系统:Razuna
- PLL与PHY的连接:通道绑定或者不绑定
- java redis sortedset_Jedis操作Redis--SortedSet类型
- 电脑打印机print spooler服务总是自动停止的解决方法...
- 数据中心监控软件 - ManageEngine OpManager
- 月末总结之大三大四规划(8.31)
- wamp 增加php 7.2,wamp环境下php7.2升级,WAMP本地环境升级php7+版本
- 【系统函数】2. 系统的因果性、稳定性
- Git--建立和解除与远程仓库的关联
- lgx06:连接数据库的驱动和url