Codeforces Round #320 (Div. 1) [Bayan Thanks-Round] A B C
发布日期:2021-11-16 12:57:00 浏览次数:2 分类:技术文章

本文共 1672 字,大约阅读时间需要 5 分钟。

        推公式(也有人二分过了)。

#include 
using namespace std; #define ll long longint main(){ int a,b; cin>>a>>b; if(b>a){ printf("-1"); return 0; } if(a==b){ printf("%d",a); return 0; } int res=a/b; double ans; double A=(a+0.0)/b; double B=1; if(res&1){ ans=(A+B+0.0)/(res+1); }else{ ans=(A+B+0.0)/(res); } printf("%.10f",ans*b); return 0;}

        首先推出一个结论,肯定是全乘在一个数上最好,但这个数不一定是最大的数,枚举一下就行了。最好的做法是处理出前缀后缀,但是我没有那样做,比较繁琐。

#include 
using namespace std; #define ll long longint a[200010];int tot[66];bool bitcnt[200010][66];int main(){ int n,k,x; cin>>n>>k>>x; for(int i=1;i<=n;i++){ scanf("%d",a+i); for(int j=0;j<31;j++){ if(a[i]&(1<

        英文单词看得不太懂,但是可以看出来是让最大/最小子串和的绝对值相等。求最大/最小子串和问题无限经典,O(n)可以做出来。然后就会有一个朴素的想法,不断地调整,多扣少补,幅度越来越小,直到满足精度要求,反正我是类似二分的一发乱搞,居然过了。

        听别人说用三分做,因为这肯定是个凹函数,我这个奇特的姿势和三分有异曲同工之妙吧。

#include 
using namespace std; #define ll long longdouble a[200010];int n;int lenp,lenn;double get_positive(){ double ans=0; double cur=0; int len=0; for(int i=1;i<=n;i++){ cur+=a[i]; len++; if(cur<0){ cur=0; len=0; } if(cur>ans){ ans=cur; lenp=len; } } return ans;}double get_negative(){ double ans=0; double cur=0; int len=0; for(int i=1;i<=n;i++){ cur+=a[i]; len++; if(cur>0){ cur=0; len=0; } if(cur
>n; double Max=0; for(int i=1;i<=n;i++){ scanf("%lf",a+i); Max=max(Max,a[i]); } double P,N; while(1){ P=get_positive(); N=get_negative(); if(fabs(P-N)<1e-6*0.8)break; double adjust=fabs(P-N)/max(lenp,lenn)/4; //不要问我这个4怎么来的,只是凭感觉除以4比较合适。 if(P>N){ for(int i=1;i<=n;i++){ a[i]-=adjust; } }else{ for(int i=1;i<=n;i++){ a[i]+=adjust; } } } double ans=(P+N)/2; printf("%.7f",ans); return 0;}

转载地址:https://blog.csdn.net/squee_spoon/article/details/48526367 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:2015 ICPC 沈阳网赛 解题报告
下一篇:2015 ICPC 长春网赛 解题报告

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月07日 07时45分54秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

线程上下文切换 2019-04-27
什么是服务熔断? 2019-04-27
服务器压力过大?CPU打满?我来帮你快速检查Linux服务器性能 2019-04-27
C++面经总结之《Effective C++》(一) 2019-04-27
C++面经总结之《Effective C++》(二) 2019-04-27
这是什么“虎狼之词”啊!!!程序员的健康问题,看一线老中医怎么说!!! 2019-04-27
打开我的收藏夹 -- Python数据分析杂谈 2019-04-27
上手Pandas,带你玩转数据(1)-- 实例详解pandas数据结构 2019-04-27
上手Pandas,带你玩转数据(2)-- 使用pandas从多种文件中读取数据 2019-04-27
上手Pandas,带你玩转数据(3)-- pandas数据存入文件 2019-04-27
爬虫遇上不让右击、不让F12的网站,该怎么办? 2019-04-27
上手Pandas,带你玩转数据(4)-- 数据清洗 2019-04-27
上手Pandas,带你玩转数据(5)-- 数据转换与数据定位 2019-04-27
上手Pandas,带你玩转数据(6)-- 摆脱对pandas可视化丑图的刻板印象吧 2019-04-27
从零开始,学会Python爬虫不再难!!! -- (1)开篇:初识爬虫,基础铺垫 丨蓄力计划 2019-04-27
从零开始,学会Python爬虫不再难!!! -- (2)承接:解析网页,抓取标签 丨蓄力计划 2019-04-27
AttributeError: module ‘urllib‘ has no attribute ‘quote‘的解决办法 2019-04-27
linux shell — 6.初识 EXT2 文件系统 2019-04-27
Java — String(字符串) 2019-04-27
linux shell — 7.linux 磁盘与文件系统管理 2019-04-27