Wannafly模拟赛5 A split 二分
2017-11-04 14:53
183 查看
思路:开始以为是对以分割数一半的平方求和是最佳的,后来才知道平分才是最佳的。只想着5*5>4*6没想5*10+5*5>7*8+4*4 每次平分应该只能过%40的数据。
#include <bits/stdc++.h> using namespace std; typedef long long LL; const int mod = 1000000007; const int MAXN = 50005; int n, m; bool judge(int x) { int c=n; LL sum=0; for(int i=1;i<=n%x;++i) { c-=(n/x+1); sum+=c*(n/x+1); } for(int i=1;i<=x-n%x;++i) { c-=(n/x); sum+=c*(n/x); } if(sum>=m) return true; else return false; } int main() { scanf("%d %d", &n, &m); int l=1,r=n-1; int ans=0; while(l<=r) { int mid=(l+r)>>1; if(judge(mid)) { ans=mid; r=mid-1; } else l=mid+1; } if(ans) printf("%d\n", ans-1); else puts("-1"); return 0; }
相关文章推荐
- Wannafly模拟赛5 A Split
- 【大二最后一题】Wannafly模拟赛 矩阵【二分+二维字符串Hash】
- Wannafly模拟赛 A.矩阵(二分答案+hash)
- 牛客网 Wannafly模拟赛 矩阵 二分+hash矩阵
- Wannafly模拟赛5 A Split 【贪心】
- 牛客网 Wannafly模拟赛 矩阵 二分+hash矩阵
- Wannafly模拟赛5 A Split
- Wannafly模拟赛 矩阵 [矩阵hash+二分]
- Wannafly模拟赛2 C alliances(dfs序+二分)
- 2017.10.19 LeetCode 二分 -> 69. Sqrt(x) -> 410. Split Array Largest Sum
- Wannafly模拟赛4 B Distance(枚举 最大曼哈顿距离模板)
- Wannafly模拟赛4 A 题 Laptop 【二维偏序问题 + 树状数组维护】
- Wannafly模拟赛4 A Laptop (前缀数组)
- Wannafly模拟赛5 待更新 题解
- Wannafly模拟赛2: A. Contest(Cdq分治)
- Wannafly模拟赛3 反蝴蝶效应
- Wannafly模拟赛4 B Distance
- Nowcode Sum(Wannafly模拟赛4)
- Wannafly模拟赛4 B.Distance 最大曼哈顿距离
- Wannafly模拟赛4 B题 Distance 【最大曼哈顿距离】