zoukankan      html  css  js  c++  java
  • CF-839A

    A. Arya and Bran
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    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.

    题意:

    每天一个数字,数可累积,每天最多减8,求最少需要多少天减值达到k。

    AC代码:

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 
     4 int a[110];
     5 
     6 int main(){
     7     ios::sync_with_stdio(false);
     8     int n,k;
     9     cin>>n>>k;
    10     int ans=0,flag=1;
    11     for(int i=0;i<n;i++){
    12         cin>>a[i];
    13         ans+=a[i];
    14         k-=min(ans,8);
    15         ans-=min(ans,8);
    16         if(k<=0){
    17             cout<<i+1<<endl;
    18             flag=0;
    19             break;
    20         }
    21     }
    22     if(flag)
    23     cout<<-1<<endl;
    24     return 0;
    25 } 
  • 相关阅读:
    朋友圈、浏览器分享实现
    Cannot read property 'appendChild' of null
    Nginx报错:Sorry, the page you are looking for is currently unavailable. Please try again later.
    RGBA(0,0,0,0)调色
    windows下 python中报错ImportError: No module named 'requests'
    一起谈.NET技术,C# 基础概念之延迟加载 狼人:
    一起谈.NET技术,为类提供软件约定 狼人:
    一起谈.NET技术,asp.net控件开发基础(6) 狼人:
    一起谈.NET技术,详解.NET程序集的加载规则 狼人:
    一起谈.NET技术,Linq学习笔记 狼人:
  • 原文地址:https://www.cnblogs.com/Kiven5197/p/7353807.html
Copyright © 2011-2022 走看看