codeforces 839A 之 Arya and Bran
来源:互联网 发布:sql server 修改视图 编辑:程序博客网 时间:2024/04/30 02:47
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.
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).
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.
2 31 2
2
3 1710 10 10
3
1 910
-1
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.
题意:Arya 每天可以获得ai颗糖,她要给Bran k颗糖,他每天最多给8颗,当天多余的糖可以留着以后给,问最少要第几天才可以满足要求?
AC代码如下:
#include <iostream>#include <cstdio>using namespace std;const int maxn=10000+10;int a[maxn];int main(){ int n,k; while(cin>>n>>k) { int ans=0; for(int i=0;i<n;i++) cin>>a[i]; for(int i=0;i<n;i++) { if(a[i]<8) { if(k>=a[i]) { k-=a[i]; if(k==0) { ans=i+1; break; } } else { k=0; ans=i+1; break; } } else { if(k<=8) { k=0; ans=i+1; break; } else { k-=8; a[i]-=8; a[i+1]+=a[i]; if(k==0) { ans=i+1; break; } } } } if(!ans) cout<<-1<<endl; else cout<<ans<<endl; } return 0;}
- codeforces 839A 之 Arya and Bran
- Codeforces 839A Arya and Bran (模拟)
- Codeforces #839A: Arya and Bran 题解
- Codeforces 839A-Arya and Bran
- codeforces 839A Arya and Bran
- Codeforces--839A--Arya and Bran
- A. Arya and Bran
- A. Arya and Bran
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #428 (Div. 2):A. Arya and Bran
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #428 (Div. 2) A. Arya and Bran
- Codeforces Round #428 (Div. 2) && 839A A. Arya and Bran
- CF428 (2) A. Arya and Bran
- Codeforces839A Arya and Bran
- CodeForces839A Arya and Bran
- Codeforces Round #428 (Div. 2) A. Arya and Bran(【贪心】)
- TW6869 drivers porting for freescaleandroid
- Iphone6S 换屏教程
- 做一个自由职业者是一种怎样的体验?
- mysql group replication 搭建详解
- 使用mkimage制作uboot脚本
- codeforces 839A 之 Arya and Bran
- 正则校验工具类
- wcsncmp
- bzoj 1008 越狱
- JAVA 并发类(二) ConcurrentHashMap 原理分析
- 短实习---Java多线程(练习题)
- 欢迎使用CSDN-markdown编辑器
- 常用APP性能测试指标
- 统计数字