zoukankan      html  css  js  c++  java
  • Codeforces Round #355 (Div. 2)-A

    A. Vanya and Fence
    题目连接:http://codeforces.com/contest/677/problem/A

    Vanya and his friends are walking along the fence of height h and they do not want the guard to notice them. In order to achieve this the height of each of the friends should not exceed h. If the height of some person is greater than h he can bend down and then he surely won't be noticed by the guard. The height of the i-th person is equal to ai.

    Consider the width of the person walking as usual to be equal to 1, while the width of the bent person is equal to 2. Friends want to talk to each other while walking, so they would like to walk in a single row. What is the minimum width of the road, such that friends can walk in a row and remain unattended by the guard?

    Input

    The first line of the input contains two integers n and h (1 ≤ n ≤ 1000, 1 ≤ h ≤ 1000) — the number of friends and the height of the fence, respectively.

    The second line contains n integers ai (1 ≤ ai ≤ 2h), the i-th of them is equal to the height of the i-th person.

    Output

    Print a single integer — the minimum possible valid width of the road.

    Examples
    input
    3 7
    4 5 14
    output
    4
    input
    6 1
    1 1 1 1 1 1
    output
    6
    input
    6 5
    7 6 8 9 10 5
    output
    11
    Note

    In the first sample, only person number 3 must bend down, so the required width is equal to1 + 1 + 2 = 4.

    In the second sample, all friends are short enough and no one has to bend, so the width1 + 1 + 1 + 1 + 1 + 1 = 6 is enough.

    In the third sample, all the persons have to bend, except the last one. The required minimum width of the road is equal to 2 + 2 + 2 + 2 + 2 + 1 = 11.

    题意:有N人,还有一个高度,每个人不能超过这个高度H。每个人通过这个高度可以有2种方式,1是当高度低于H时,这个人的宽度占1个单位,2是当高度超过H时,这个人要弯腰通过,这个人占2个单位。问最少的宽度是多少?

    思路:很明显,当a[i]<=H时,对答案的贡献是1,否则对答案的贡献是2.

    #define _CRT_SECURE_NO_DEPRECATE
    #include<iostream>
    #include<algorithm>
    #include<cmath>
    #include<cstring>
    #include<string>
    #include<cstdio>
    using namespace std;
    typedef long long int LL;
    #define INF 0x3f3f3f3f
    const int MAXN = 1000+5;
    int H[MAXN];
    int main(){
        int n, h;
        while (~scanf("%d%d", &n, &h)){
            int ans = 0;
            for (int i = 0; i < n; i++){
                scanf("%d", &H[i]);
                if (H[i]>h){
                    ans += 2;
                }
                else{
                    ans += 1;
                }
            }
            printf("%d
    ", ans);
        }
        return 0;
    }
  • 相关阅读:
    day-14 模块的使用,循环导入,模块导入路径优先级,项目的目录结构
    day13-三元表达式,生成式,递归函数,匿名函数
    day12-无参装饰器,迭代器和生成器
    day11-函数对象,函数嵌套,名称空间与作用域,闭包函数,以及装饰器的前言
    一周总结(4)
    大道至简读后感
    一周总结(3)
    一周总结(2)
    一周总结(1)
    关于教室派app的使用体验与建议
  • 原文地址:https://www.cnblogs.com/kirito520/p/5552154.html
Copyright © 2011-2022 走看看