分析:首先去重排序,然后枚举a[i]的倍数,找到最大的a[j],使得a[j]小于a[i]的倍数,用二分法找,然后更新一下最大值。枚举a[i]和倍数复杂度为O(nlogn),二分O(logn),总的为O(n(logn)^2)。

 1 #include<iostream>
 2 #include<algorithm>
 3 #include<cstring>
 4 using namespace std;
 5 const int maxn=200005;
 6 int a[maxn],n;
 7 bool have[5*maxn];
 8 inline int Dich(int t,int l){
 9     if(a[n-1]<=t)return a[n-1];
10     if(a[l]>t)return a[l-1];
11     int r=n-1,m=(r+l)/2;
12     while(l<r&&l!=m){
13         if(a[m]==t)return a[m];
14         if(a[m]>t)r=m;
15         else l=m;
16         m=(l+r)/2;
17     }
18     return a[m];
19 }
20 int main(){
21     cin>>n;
22     int v;
23     memset(have,0,sizeof(have));
24     for(int i=0;i<n;i++){
25         cin>>v;
26         if(have[v]){
27             n--;i--;
28             continue;
29         }
30         a[i]=v;
31         have[v]=true;
32     }
33     sort(a,a+n);
34     int ans=0;
35     for(int i=0;i<n;i++){
36         int t=a[i]*2;
37         do{
38             int k=Dich(t-1,i+1)%a[i];
39             if(k>ans)ans=k;
40         }while((t+=a[i])<=a[n-1]);
41     }
42     cout<<ans<<endl;
43     return 0;
44 }

转载于:https://www.cnblogs.com/7391-KID/p/7071784.html

51nod 1421 最大MOD值相关推荐

  1. 51nod 1421 最大MOD值(高妙的调和级数复杂度)

    有一个a数组,里面有n个整数.现在要从中找到两个数字(可以是同一个) ai,aj ,使得 ai mod aj 最大并且 ai ≥ aj. Input 单组测试数据. 第一行包含一个整数n,表示数组a的 ...

  2. 取余最长路 51Nod - 1624

    https://www.51nod.com/Challenge/Problem.html#!#problemId=1624 一开始考虑枚举第一行 剩下的两行用set维护 但是在枚举过程中 低两行中的数 ...

  3. 求一个字符串的hash值

    转载自:http://www.cnblogs.com/jiu0821/p/4554352.html 求一个字符串的hash值: •现在我们希望找到一个hash函数,使得每一个字符串都能够映射到一个整数 ...

  4. [51NOD1126]求递推序列的第n项(矩阵快速幂)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1126 存在参数a,b为负数的情况.这时候要这么处理: 根据mo ...

  5. hashcat中文文档

    hashcat 中文文档 描述 hashcat是世界上最快,最先进的密码恢复工具. 此版本结合了以前基于CPU的hashcat(现在称为hashcat-legacy)和基于GPU的oclHashcat ...

  6. COGS 2769. mk去撸串

    [题目描述] 今天 mk 去撸串 ,恰逢店里活动 ,如果吃一种串串超过记录, 可以 赠送 328, 所以 mk 想知道他吃的串串中吃的最多的种类是什么. [输入格式] 第一行一个整数 1<=n& ...

  7. elasticJob分片跑批

    2019独角兽企业重金招聘Python工程师标准>>> 业务迅速发展带来了跑批数据量的急剧增加.单机处理跑批数据已不能满足需要,另考虑到企业处理数据的扩展能力,多机跑批势在必行.多机 ...

  8. discuz二次开发笔记(一)------$_G全解析,discuz_g_PHP教程

    $_G 保存了 Discuz! 中所有的预处理数据 缓存能够很好的提高程序的性能,一些配置数据没必要每次都查询数据库,只要在修改了的时候更新下缓存即可. Discuz! 中所有的缓存保存在 $_G[c ...

  9. Item 9 Always override hashCode when you override equals HASHMAP扩展

    这个item的意思是,如果两个对象在你的equals的方法中「逻辑相等」了,那么就要让hashCode方法处理这两个对象的时候,也返回同样的hash.否则的话会造成一个问题,就是如果用Map,Set存 ...

最新文章

  1. v2视频服务器退出系统怎么启动,V2视频会议系统入门操作手册.doc
  2. 剑指 Offer 11. 旋转数组的最小数字 LCOF
  3. 机器学习(三十六)——Integrating Learning and Planning(2)
  4. Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)
  5. 10款非常有效的帮助你设计超酷响应式布局的jQuery插件
  6. teradata 数据定义
  7. OSChina 周二乱弹 —— 做人呐,最重要的就是开森
  8. Vue报错:Uncaught TypeError: Cannot assign to read only property ‘exports‘ of object 的解决方法
  9. C# 从磁盘中读取文件
  10. 23种设计模式--桥接模式(Bridge)
  11. grunt html模块化管理插件,grunt模块化配置
  12. 全网首发ai绘画小程序基于novelai
  13. java如何设置控制台打印的字体颜色、背景、字体样式(idea设置打印字体样式)工具类 - 附插件方式
  14. 第七届蓝桥杯大赛个人赛--小明被绑架到X星球的巫师W那里
  15. 编写.bat执行jar包
  16. 【译】Sobel 算子文档
  17. C1083: 无法打开包括文件: plugin.moc: No such file or directory
  18. 【WSN】基于COMPOW协议下的网络连通率和覆盖率附matlab代码
  19. android浪漫樱花凋零动态壁纸应用源码
  20. OK外呼中心配置的电话系统规则

热门文章

  1. NAT VRRP
  2. ASP网站程序自动升级实现的方法
  3. sprint周期总结
  4. 干货 | 携程是如何做AB实验分流的
  5. 一个Java对象到底占用多大内存?
  6. 深入浅出Python元编程
  7. 二进制函数_SERVERLESS函数小解
  8. “冷热通道气流遏制系统”在数据中心机房中的应用
  9. 无头虚拟化服务器,VBoxHeadless - 使用VirtualBox 4.0在无头Ubuntu 10.10服务器上运行虚拟机...
  10. webbrowser 百度列表点击_前嗅ForeSpider采集教程:关键词的「检索列表」采集「检索结果」...