Codeforces Round #428 (Div 2) A
来源:互联网 发布:印度一夫多妻制 知乎 编辑:程序博客网 时间:2024/06/05 14:10
A. Arya and Bran
Bran and his older sister Arya are from the same house. Bran like candies so much, so Arya is going to give him some Candies.
At first, Arya and Bran have 0 Candies. There are n days, at the i-th day, Arya finds ai candies in a box, that is given by the Many-Faced God. Every day she can give Bran at most 8 of her candies. If she don’t give him the candies at the same day, they are saved for her and she can give them to him later.
Your task is to find the minimum number of days Arya needs to give Bran k candies before the end of the n-th day. Formally, you need to output the minimum day index to the end of which k candies will be given out (the days are indexed from 1 to n).
Print -1 if she can’t give him k candies during n given days.
Input
The first line contains two integers n and k (1 ≤ n ≤ 100, 1 ≤ k ≤ 10000).
The second line contains n integers a1, a2, a3, …, an (1 ≤ ai ≤ 100).
Output
If it is impossible for Arya to give Bran k candies within n days, print -1.
Otherwise print a single integer — the minimum number of days Arya needs to give Bran k candies before the end of the n-th day.
Examples
input
2 3
1 2
output
2
input
3 17
10 10 10
output
3
input
1 9
10
output
-1
Note
In the first sample, Arya can give Bran 3 candies in 2 days.
In the second sample, Arya can give Bran 17 candies in 3 days, because she can give him at most 8 candies per day.
In the third sample, Arya can’t give Bran 9 candies, because she can give him at most 8 candies per day and she must give him the candies within 1 day.
【解题报告】
话说这么水的题还要单独写一篇博客真的是有一点。。。
这道题就是一道SB贪心。。。
昨天三分钟敲完之后发现自己比赛没有报名。。。
代码如下:
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define N 110int n,k,sum=0;int a[N];int main(){ scanf("%d%d",&n,&k); for(int i=1;i<=n;++i) scanf("%d",&a[i]); for(int i=1;i<=n;++i) { if(a[i]>8) { sum+=8; a[i+1]+=a[i]-8; } else { sum+=a[i]; } if(sum>=k) { printf("%d\n",i); return 0; } } printf("-1\n");}
- Codeforces Round #428 (Div. 2)(A+B)
- Codeforces Round #428 (Div 2) A
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #428 (Div. 2):A. Arya and Bran
- Codeforces Round #428 (Div. 2) A B C D
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #428 (Div. 2) A B C
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #131 (Div. 2) A B
- Codeforces Round #174 (Div. 2) Problem A
- Codeforces Round #173 (Div. 2) A.Bit++
- Codeforces Round #181 (Div. 2) A题
- Codeforces Round #184 (Div. 2) A题
- Codeforces Round #185 (Div. 2)--A,B
- Codeforces Round #172 (Div. 2) A题
- Codeforces Round #166 (Div. 2) A题
- Codeforces Round #132 (Div. 2) A题
- ES6之-解构赋值
- Valid Parentheses
- 网易2018校招编程题集合6
- 在Pycharm上对用程序模仿Linux/Unix cat命令的一些理解
- 坐标系统
- Codeforces Round #428 (Div 2) A
- 打印1到最大的n位数-Java
- 创建链表的小例子
- c++11 float_point environmen
- Linux文件系统性能优化
- PAT 甲级 1018. Public Bike Management (30)
- mysql5.7多实例安装部署
- [JLOI2014]松鼠的新家
- iOS 常见算法(二分法、冒泡 、选择)~性能demo