zoukankan      html  css  js  c++  java
  • School Personal Contest #1 (Codeforces Beta Round #38)---A. Army

    time limit per test
    2 seconds
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    The Berland Armed Forces System consists of n ranks that are numbered using natural numbers from 1 to n, where 1 is the lowest rank and n is the highest rank.

    One needs exactly di years to rise from rank i to rank i + 1. Reaching a certain rank i having not reached all the previous i - 1 ranks is impossible.

    Vasya has just reached a new rank of a, but he dreams of holding the rank of b. Find for how many more years Vasya should serve in the army until he can finally realize his dream.

    Input

    The first input line contains an integer n (2 ≤ n ≤ 100). The second line contains n - 1 integers di (1 ≤ di ≤ 100). The third input line contains two integers a and b (1 ≤ a < b ≤ n). The numbers on the lines are space-separated.

    Output

    Print the single number which is the number of years that Vasya needs to rise from rank a to rank b.

    Sample test(s)
    input
    3
    5 6
    1 2
    
    output
    5
    
    input
    3
    5 6
    1 3
    
    output
    11




    解题思路:就是简单的求区间和。

    直接开个和数组,a[i]代表i之前(包含i)的全部数的和。

    查询时。直接两个和减一下就可以。





    AC代码:

    #include <string.h>
    #include <iostream>
    #include <algorithm>
    #include <vector>
    #include <queue>
    #include <set>
    #include <map>
    #include <string>
    #include <math.h>
    #include <stdlib.h>
    #include <time.h>
    using namespace std;
    #define INF 0x7fffffff
    
    int c[105];
    
    int main()
    {
        #ifdef sxk
            freopen("in.txt","r",stdin);
        #endif
        int n, a, b, t;
        while(scanf("%d",&n)!=EOF)
        {
            c[0] = 0;
            scanf("%d", &c[1]);
            for(int i=2; i<=n-1; i++){
                scanf("%d", &t);
                c[i] = c[i-1] + t;
            }
            scanf("%d%d", &a, &b);
            printf("%d
    ", c[b-1] - c[a-1]);
        }
        return 0;
    }


  • 相关阅读:
    ST表学习笔记
    LCA学习笔记
    $ZOJ 2432 Greatest Common Increasing Subsequence$
    $SP15637 GNYR04H - Mr Youngs Picture Permutations$
    Noip2016换教室
    洛谷4718【模板】Pollard-Rho算法
    CQOI2016 密钥破解
    Poj3696 The Lukiest Number
    Noip2012同余方程
    同余
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/7010203.html
Copyright © 2011-2022 走看看