Magic Powder
来源:互联网 发布:汽修教学软件 编辑:程序博客网 时间:2024/06/07 02:28
The term of this problem is the same as the previous one, the only exception — increased restrictions.
The first line contains two positive integers n and k (1 ≤ n ≤ 100 000, 1 ≤ k ≤ 109) — the number of ingredients and the number of grams of the magic powder.
The second line contains the sequence a1, a2, ..., an (1 ≤ ai ≤ 109), where the i-th number is equal to the number of grams of the i-th ingredient, needed to bake one cookie.
The third line contains the sequence b1, b2, ..., bn (1 ≤ bi ≤ 109), where the i-th number is equal to the number of grams of the i-th ingredient, which Apollinaria has.
Print the maximum number of cookies, which Apollinaria will be able to bake using the ingredients that she has and the magic powder.
1 100000000011000000000
2000000000
10 11000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 10000000001 1 1 1 1 1 1 1 1 1
0
3 12 1 411 3 16
4
4 34 3 5 611 12 14 20
3
一个很标准的二分,但自己还是反应不过来,真的菜的抠脚啊,注意long long,不要超了范围。
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;long long a[100001];long long b[100001];int main(){ long long n,k; scanf("%I64d %I64d",&n,&k); for(int i=1; i<=n; i++) { scanf("%I64d",&a[i]); } for(int i=1; i<=n; i++) { scanf("%I64d", &b[i]); } long long x = 0; long long y = 2000000000; long long minx = 0; while(x <= y) { long long mid = (x+y)/2; long long kk = k; long long i; for(i=1; i<=n; i++) { if(mid*a[i] > b[i]) kk -= (mid*a[i]-b[i]); if(kk<0)break; } if(i==n+1) {x=mid+1;minx = max(minx,mid);} else y=mid-1; } printf("%I64d\n",minx); return 0;}水波。
- Magic Powder
- Magic Powder
- Magic Powder
- Magic Powder
- Magic Powder
- Magic Powder
- Magic Powder
- CF670D2 Magic Powder
- codeforce之Magic Powder
- D2. Magic Powder - 2
- Magic Powder - 2
- Magic Powder - 2
- codeforces670D2 Magic Powder - 2 (二分)
- Codeforces 670D2 Magic Powder
- codeforces 670D2. Magic Powder - 2
- codeforces 670D1 - Magic Powder - 1
- codeforces 670D2 - Magic Powder - 2
- D - Magic Powder - 1 codeforces 670d1
- Java语言开发工具包JDK的安装与配置
- 奥威Power-BI电商运维BI解决方案-网站留存分析
- 百练_2684:求阶乘的和
- Java 已死?听听这些重量级大咖是怎么说的
- 事务
- Magic Powder
- STL学习笔记13— —特殊容器priority_queue
- 2017暑期开发封闭计划
- FFMPEG学习【libavutil】:Memory Management(一)
- 转义字符简析及注意事项
- 移动ImageView,并且保存移动后的位置
- VS 2012 C#快捷键
- 微信小程序 动态改变样式
- 文章标题