zoukankan      html  css  js  c++  java
  • 武汉科技大学ACM:1003: 看美女

    Problem Description

    “排排站,赏美女……”

    YJ师兄在今年牡丹江赛区人品爆发,怒摘银奖,心情倍好,现组织大家去黄家湖边站成一排看美女 ^.^

    N个人站成一排。不巧,美女们只在队伍的最左边和最右边,你们可以向左看或者向右看。如果第i个人向左看,当且仅当第i个人的身高h[i]>=h[j] ( j=1...i-1) 时,他能看到美女;如果第i个人向右看,当且仅当第i个人的身高h[i]>=h[j] (j=i+1..N)时,他能看见美女。已知N个人的身高,求最多有多少人能看到美女。

    Input

    先输入一个正整数T,表示有T组数据

    每组数据:第一行 N。N<=100 000

         第二行N个整数,表示每个人的身高(1<=h<=20000)

    Output

    输出能看到美女的人数。

    Sample Input

    1
    5
    1 4 7 6 2
    

    Sample Output

    5
    
     1 #include<stdio.h>
     2 #include<string.h>
     3 int main()
     4 {
     5     int T,n,i,a[100005],b[100005];
     6     int m_ax,sum;
     7     scanf("%d",&T);
     8     while(T--)
     9     {
    10         memset(b,0,sizeof(b));
    11         scanf("%d",&n);
    12         for(i=1; i<=n; i++)
    13             scanf("%d",&a[i]);
    14         m_ax=a[1];
    15         sum=0;
    16         for(i=1; i<=n; i++)
    17         {
    18             if(a[i]>=m_ax)
    19             {
    20                 m_ax=a[i];
    21                 sum++;
    22                 b[i]=1;
    23             }
    24         }
    25         m_ax=a[n];
    26         for(i=n; i>0; i--)
    27         {
    28             if(a[i]>=m_ax)
    29             {
    30                 m_ax=a[i];
    31                 if(b[i]==0)
    32                     sum++;
    33             }
    34         }
    35         printf("%d
    ",sum);
    36     }
    37     return 0;
    38 }
  • 相关阅读:
    markdown 常用语法
    markdown 转 pdf 方法
    git call failed: [git clone Could not resolve host: git.openstack.org
    从VirtualBox虚拟主机访问NAT客户机的方法
    MVC,MVP 和 MVVM 的图示
    url转义
    Python如何输出包含在对象中的中文字符?
    OpenGL
    AutoHotKey使用:空格键坏了怎么办?
    三联书社推荐好书100本
  • 原文地址:https://www.cnblogs.com/liuwt365/p/4174633.html
Copyright © 2011-2022 走看看