[BZOJ 4488][Jsoi2015]最大公约数
2024-08-29 06:36:00
不知谁说过一句名句,我们要学会复杂度分析
#include <bits/stdc++.h> using namespace std; #define rep(i,a,b) for(int i=a;i<=b;++i) #define fd(i,a,b) for(int i=a;i>=b;--i) ; typedef long long ll; inline ll gi() { ll x=; char o; bool f=true; for(;!isdigit(o=getchar());) if(o=='-')f=false; )+(x<<)+(o&); ; } ll ans,a[maxn],pre[maxn<<][]; int n; ll gcd(ll x,ll y){return x?gcd(y%x,x):y;} ll gt(int s,int t) { ll ret=a[s]; fd(i,,) <<i)-<=t) ret=gcd(ret,pre[s][i]),s=s+(<<i); return ret; } int Find(int l,int r,int s,ll v) { int ret=l; while( l<=r) { ; ; ; } return ret; } int main() { #ifndef ONLINE_JUDGE freopen("3.in","r",stdin); #endif scanf(,n) a[i]=pre[i][]=gi(); rep(k,,) rep(i,,n) pre[i][k]=gcd(pre[i+(<<k-)][k-],pre[i][k-]); rep(i,,n) { int L=i; while(L<=n) { ll val=gt(i,L); int ed=Find(i,n,i,val); ans=max(ans,1LL*(ed-i+)*val); L=ed+; } } printf("%lld\n",ans); ; }
最新文章
- [LeetCode] Shortest Word Distance 最短单词距离
- acvity和fragment通过广播联系
- Python中的深浅拷贝
- 【PHP面向对象(OOP)编程入门教程】7.特殊的引用”$this“的使用
- 中国排名前100的IT公司 (转)
- (java版)斐波那契数列
- R(五): R常用函数
- 贵州大学iPhone、Android(安卓)项目助跑计划!!!
- redis命令参考
- Oracle EBS 寄售业务总结
- idea maven web工程明明添加了maven lib的依赖,但启动web容器时始终报No Class Found?
- Caffe学习系列(二)Caffe代码结构梳理,及相关知识点归纳
- 《UNIX环境高级编程》第七章进程环境
- HDFS架构及原理
- log4cplus在Linux下编译及使用
- WinEdt和LaTeX的简介
- apache中如何调用CGI脚本
- Photoshop的辅助线
- FileUriExposedException_Android7.0适配
- 初级字典树查找在 Emoji、关键字检索上的运用 Part-1
热门文章
- 10-编译PHP并与nginx整合
- ECShop研究:去掉标题中的Powered by ECShop和meta的<;meta name=";Generator"; content=";ECSHOP v2.7.3"; />;
- TTS技术
- BBS后台发送邮件&;修改文章
- (函数)实现strstr函数
- datagrid 自定义 pager
- 用maven将项目安装到本地仓库,为什么老是在默认仓库地址(C:\Users\userName\.m2\repository)
- Alpha冲刺(二)
- Replication--复制问答
- docker 镜像 容器删除