【二分】Codeforces Round #404 (Div. 2) C. Anton and Fairy Tale
2024-08-29 06:21:59
当m>=n时,显然答案是n;
若m<n,在第m天之后,每天粮仓减少的量会形成等差数列,只需要二分到底在第几天,粮仓第一次下降到0即可。
若直接解不等式,可能会有误差,需要在答案旁边扫一下。
注意二分上界的确定,不能太小也不能太大。
#include<cstdio>
#include<iostream>
using namespace std;
typedef long long ll;
ll n,m;
int main(){
cin>>n>>m;
if(m>=n){
cout<<n<<endl;
return 0;
}
ll S=n-m;
ll l=1,r=2000000000ll;
while(l<r){
ll mid=(l+r)/2ll;
if(mid*mid+mid>=S*2ll){
r=mid;
}
else{
l=mid+1;
}
}
cout<<m+l<<endl;
return 0;
}
最新文章
- Wintel物联网平台-Windows IoT新手入门指南
- web前端之html5开发中常用的开发工具
- Xcode下搭建opencv环境碰到的一些问题
- Android 网络连接判断与处理
- http://jingyan.baidu.com/article/a3761b2b66fe141577f9aa51.html
- (源)V8 Engine 编译
- centos下安装chdmg
- Struts2拦截器总结<;转>;
- 树莓派学习笔记——交叉编译练习之SQLite3安装
- CS Round#50 D min-races
- api-gateway实践(03)新服务网关 - 网关请求拦截检查
- Python2.7从入门到精通
- ps遇到的技术问题列表
- POJ 2112 Optimal Milking (二分+最短路+最大流)
- C#泛型(一)
- 关于JSONObject和JSONArray所需要的jar
- Linux下的压缩解压缩命令详解及实例
- Java Type Inference (类型推断)
- QQ登录整合/oauth2.0认证-01-申请appkey和appid
- 灯光探测器LightProbe[Unity]