zoukankan      html  css  js  c++  java
  • XidianOJ 1062 Black King Bar

    题目描述

    For kazmodon!

    ——A DotA hero using BKB


    一天,lw梦见自己在打dota,然而对面是一个加强过的卡尔!于是,他每次都被n个技能瞬间秒杀。愤怒的lw决定买BKB,来加强生存力。

    由于加强过的卡尔是电脑操作的,他每次看见lw时,只会以1毫秒的时间间隔连续放n个技能,第i个技能造成ki点伤害。如果某个技能没有成功放出来,他也不会试图再次释放该技能。已知lw的BKB可以为他提供t毫秒的魔免时间(即,能抵挡连续的t个技能),那么BKB至多能降低多少伤害呢?

    输入

    多组数据(不超过10组)。

    每组数据,第一行2个整数n、t,第二行n个整数k1,k2,...,kn,用空格分割。

    数据保证1<=n<=100000,1<=t<=10000,0<=ki<=1000。

    输出

    #include <iostream>
    #include <cstdio>
    #include <cstring>
    #include <algorithm>
    using namespace std;
    typedef long long LL;
    
    LL k[100001];
    int n,t;
    int main(){
        while (scanf("%d %d",&n,&t) != EOF){
            LL sum = 0,max = 0;
            k[0] = 0;
            int i; 
            for (i=1;i<=n;i++){
                scanf("%d",&k[i]);
                sum += k[i];
                if (i >= t){
                    sum -= k[i-t];
                    if (sum > max)
                        max = sum; 
                }
            }
            if (max == 0){
                max = sum;
            }
            printf("%lld
    ",max);
        }
        return 0;
    }

    输出1行,一个整数,表示BKB能避免的最大伤害。

    --正文

    特殊的区间操作,直接在读入数据的时候就可以开始处理了

    注意(n < t)的特殊情况

  • 相关阅读:
    16.ajax_case08
    16.ajax_case07
    16.ajax_case06
    16.ajax_case05
    9.2 sun.py
    9.1 mongo_python.py
    pandas-如何得到某一个值所在的行
    [已解决]ValueError: row index was 65536, not allowed by .xls format
    [已解决]python FileNotFoundError: [WinError 3] for getsize(filepath)
    Tomcat6连接数设置:permsize
  • 原文地址:https://www.cnblogs.com/ToTOrz/p/6115228.html
Copyright © 2011-2022 走看看