zoukankan      html  css  js  c++  java
  • Candy

    Candy

    There are NNN children standing in a line. Each child is assigned a rating value.

    You are giving candies to these children subjected to the following requirements:

    (1) Each child must have at least one candy.

    (2) Children with a higher rating get more candies than their neighbors.

    What is the minimum candies you must give?

    Input:

    The input consists of multiple test cases.

    The first line of each test case has a number NNN, which indicates the number of students.

    Then there are NNN students rating values, 1≤N≤300,1≤values≤100001 leq N leq 300, 1 leq values leq 100001N300,1values10000.

    Output:

    The minimum number of candies you must give.

    样例1

    输入:

    5
    1 2 3 4 5
    5 
    1 3 5 3 6

    输出:

    15
    9

    好题,
    3
    3 3 1
    #include <cstdio>
    #define N 301
    int num[N], pro[N];
    int main()
    {
        int n;
        while(scanf("%d", &n) != EOF)
        {
            for(int i=0; i< n; i++) 
                scanf("%d", &pro[i]);
            num[0]= 1;
            for(int i=1; i<n; i++)  //从前向后扫描;
            {
                if(pro[i]> pro[i-1])
                    num[i]=num[i-1]+1;
                else
                    num[i]=1;
            }
             
            for(int i=n-2; i>=0; i--) //从后向前扫描
            {
                if(pro[i] >pro[i+1] && num[i] <= num[i+1])
                {
                    num[i]= num[i+1]+1;
                }
            }
            
            int sum= 0;
            for(int i=0; i< n; i++)
            {   
                sum += num[i];
            }
            printf("%d
    ", sum);
        }
        return 0;
    }
  • 相关阅读:
    AutoResetEvent 2
    AutoResetEvent
    c++ 控制台输入参数
    C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped
    filezilla管理网站服务器
    matlab
    WCF:无法满足对安全令牌的请求,因为身份验证失败。
    WCF 学习
    dev
    dotnetbar
  • 原文地址:https://www.cnblogs.com/soTired/p/5432478.html
Copyright © 2011-2022 走看看