CF1872G
题意:一个正整数序列,\(a[i] < 10^9\),求 \(l\),\(r\),最大化
\]
诈骗题。
如果在 \([l, r]\) 间乘积的 \(T\) 中去除一个数 \(x\),对答案的贡献为 $$f(x) = x - T / x$$
若去除任意一个 \(x\) 都不会变优,由于是单增的,则
\]
\]
所以一旦整个序列之积 \(> 10^{18}\),\(l\) 即为最左侧 \(> 1\) 的位置,\(r\) 为最右侧 \(> 1\) 的位置。
否则,大于 \(1\) 的数的个数 \(< 60\),枚举左右端点即可。
实际上这个上界远小于 \(10^{18}\),只不过这样更好想且也能轻松通过。
void solve() {
int n; cin >> n;
vector<ll> a(n + 1), sum(n + 1, 0), mul(n + 1, 1);
vector<int> pos;
rep(i, 1, n) cin >> a[i];
rep(i, 1, n) {
if(mul[i - 1] > 1e15 / a[i]) {
int l = 1, r = n ;
while(l < n && a[l] == 1) ++ l;
while(r > 1 && a[r] == 1) -- r;
return cout << l << ' ' << r << '\n', void();
}
if(a[i] > 1) pos.pb(i);
sum[i] = sum[i - 1] + a[i];
mul[i] = mul[i - 1] * a[i];
}
int l = 1, r = 1;
ll ans = 0;
for(int i : pos) {
for(int j : pos) {
if(i <= j) {
if(sum[i - 1] + (mul[j] / mul[i - 1]) + (sum[n] - sum[j]) > ans) {
ans = sum[i - 1] + (mul[j] / mul[i - 1]) + (sum[n] - sum[j]);
l = i;
r = j;
}
}
}
}
cout << l << ' ' << r << '\n';
}
随机推荐
- AXI4的IP的输入配置
AXI4的IP的输入配置 1.实验原理 前面一篇验证中验证了AXI中的data_reg_out是输出缓存器.这里再引入一个slv_reg2作为slv-_reg1的输入输出配置寄存器.这里先实现一个简单 ...
- YOLOv4: 虽迟但到,大型调优现场,43mAP/83FPS | 论文速递
YOLOv4在速度和准确率上都十分优异,作者使用了大量的trick,论文也写得很扎实,在工程还是学术上都有十分重要的意义,既可以学习如何调参,也可以了解目标检测的trick. 来源:晓飞的算法工程 ...
- kingbaseES V8R3集群运维案例之---集群部署前后ssh端口修改
kingbaseES V8R3集群运维案例之---集群部署前后ssh端口修改 案例说明: kingbaseES V8R3集群部署读写分离的集群是使用ssh的默认端口(22)部署,当改为非默认端口时,在 ...
- wordpress搭建个人博客(阿里云服务器、宝塔面板、Elementor)
wordpress搭建个人博客(阿里云服务器.宝塔面板.Elementor) 笔记根据bilibili比得汪视频教程整理 https://www.bilibili.com/video/BV1Vg411 ...
- DNS的各种记录类型的应用解析
可能很多人平时工作中不会遇到DNS配置相关的问题, 但如果偶尔遇到不同类型DNS记录的配置, 在没有搞清楚它们都是干啥的情况下, 会眼花缭乱, 还记得很多年前实验室配置DNS不太对导致只能访问www. ...
- #dfs,trie#洛谷 4341 [BJWC2010]外星联络
题目 分析 首先时间复杂度\(O(n^2)\)可过,统计子串个数可以用trie或者更高级的方法 可以枚举所有的后缀,然后建一个trie,这样这个trie就可以记录全部的子串 关于字典序排序,深搜的时候 ...
- 2023 OpenHarmony年度运营报告
- Unity中国、Cocos为OpenHarmony游戏生态插上腾飞的翅膀
2023年是OpenHarmony游戏生态百花齐放的一年!为了扩展OpenHarmony游戏生态,OpenHarmony在基金会成立了游戏SIG小组,游戏SIG小组联合cocos,从cocos2d ...
- OpenHarmony Meetup成都站招募令
OpenHarmony Meetup 城市巡回成都站火热招募中!! 日期:2023 年 10 月 27 日 14:00 地点:电子科技大学(沙河校区)学术交流中心一楼 104 会议室 与 OpenHa ...
- Demo Day直播 | 成长计划解决方案学生挑战赛一等奖即将揭晓!
OpenAtom OpenHarmony开源开发者成长计划 解决方案学生挑战赛 Demo Day来袭! 每一支队伍 心怀梦想,攻坚克难 迸发出照亮世界的火花 用技术推动世界进步 与你一起,共创未来 ...