Maximum Value CodeForces
来源:互联网 发布:python怎么多线程并发 编辑:程序博客网 时间:2024/06/06 01:32
You are given a sequence a consisting of n integers. Find the maximum possible value of (integer remainder of ai divided by aj), where 1 ≤ i, j ≤ n and ai ≥ aj.
The first line contains integer n — the length of the sequence (1 ≤ n ≤ 2·105).
The second line contains n space-separated integers ai (1 ≤ ai ≤ 106).
Print the answer to the problem.
Input
33 4 5
Output
2
乱搞的优化,然后就过了23333.
不难想找到大于等于倍数的第一个数。然而看上去复杂度应该比较勉强n*logn可以过。两个优化。
#include <bits/stdc++.h>using namespace std;const int MAXN = 2e5+5;int n;int num[MAXN];int main(){ scanf("%d",&n); for(int i = 0; i < n; ++i)scanf("%d",&num[i]); sort(num,num+n); int ans = 0; for(int i = n-1; i >=0 ; --i) { if(ans > num[i] - 1)break; if(num[i] == num[i+1])continue; for(int j = num[i]<<1; ; j+=num[i]) { int d = lower_bound(num+i+1,num+n,j) - num; d--; //cout << num[i]<<" " <<num[d] <<" "<<num[d] % num[i]<< endl; d = num[d] % num[i]; ans = ans>d?ans:d; if(j > num[n-1])break; } } printf("%d\n",ans); return 0;}/*64 7 9 10 12 18 308101 7 8 4 5 6 9 85 14 206201 7 8 6 4 2 9 5 12 15 20 45 82 65 24 54 456 123 754 654298*/第二个优化最关键,避免二分时一直到上届吧。
阅读全文
0 0
- codeforces D. Maximum Value
- Maximum Value CodeForces
- CodeForces 484B Maximum Value
- Codeforces 484B Maximum Value
- codeforces 485D. Maximum Value
- Maximum Value - CodeForces 484 B 水题
- B. Maximum Value(Codeforces Round #276(div1)
- Codeforces 484B Maximum Value(高效+二分)
- CodeForces-485D Maximum Value(暴力)
- Codeforces 485D Maximum Value【思维+数论】
- [杂题] Codeforces #484B. Maximum Value
- Codeforces Round #276 (Div. 1) B. Maximum Value
- Codeforces Round #276 (Div. 1) B. Maximum Value
- Codeforces 484B Maximum Value(排序+二分)
- Codeforces 484B. Maximum Value(高效二分搜索)
- codeforces #484B# Maximum Value(二分lower_bound)
- Codeforces Round #276 (Div. 1) B. Maximum Value(哈兮)
- codeforces 484 B Maximum Value 排序+二分 + 数学
- mysql数据库中创建数据库和表的命令
- css高级语法
- Nginx+Tomcat实现负载均衡
- ISO框架设计之登录超时、未登录设计和断网重连的设计。。。。。
- AppBarLayout与CoordinatorLayout实现toobar各种效果
- Maximum Value CodeForces
- [笔记]论文阅读笔记(1)
- linux使用flock文件锁解决crontab冲突问题
- 资讯精选|25张图看透阿里未来“新零售”的大局(附下载)
- 分页存储管理方式——初解
- ASP.NET Web Pages – HTML 窗体
- RXD and dividing
- 利用暴力打表来规律
- hibernate 中 get、load 的 区别