• POJ 2181


     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cmath>
     4 #define MAXN 150005
     5 #include <algorithm>
     6 
     7 using namespace std;
     8 
     9 struct node
    10 {
    11     int num;
    12     int sum;
    13     bool boo;
    14 };
    15 
    16 node _m[MAXN];
    17 int n;
    18 void init();
    19 
    20 int main()
    21 {
    22     //freopen("acm.acm","r",stdin);
    23     int i;
    24     int j;
    25     int max = -1;
    26     cin>>n;
    27     init();
    28     for(i = 0; i < n; ++ i)
    29     {
    30         cin>>_m[i].num;
    31     }
    32     _m[0].boo = true;
    33     _m[0].sum = _m[0].num;
    34     for(i = 1; i < n; ++ i)
    35     {
    36         j = i - 1;
    37         if(_m[j].boo == true)
    38         {
    39             if(_m[i].num >= _m[j].num)
    40             {
    41                 _m[i].boo = true;
    42                 _m[i].sum = _m[j].sum + _m[i].num - _m[j].num;
    43                 if(_m[i].sum > max)
    44                 {
    45                     max = _m[i].sum;
    46                 }
    47             }
    48             else 
    49             {
    50                 _m[i].boo = false;
    51                 _m[i].sum = _m[j].sum - _m[i].num;
    52             }
    53         }
    54         else
    55         {
    56             if(_m[i].num <= _m[j].num)
    57             {
    58                 _m[i].boo = false;
    59                 _m[i].sum = _m[j].sum + _m[j].num - _m[i].num;
    60             }
    61             else
    62             {
    63                 _m[i].boo = true;
    64                 _m[i].sum = _m[i].num + _m[j].sum;
    65                 if(_m[i].sum > max)
    66                 {
    67                     max = _m[i].sum;
    68                 }
    69             }
    70         }
    71     }
    72 
    73     cout<<max<<endl;
    74 }
    75 
    76 void init()
    77 {
    78     int i;
    79     int j;
    80     for(i = 0; i < n; ++ i)
    81     {
    82         _m[i].boo = false;
    83         _m[i].sum = 0;
    84         _m[i].num = 0;
    85     }
    86 }

    关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。 

    技术网站地址: vmfor.com

  • 相关阅读:
    Android系统框架
    get请求在ie浏览器下有缓存
    select2的基本用法
    js 获取url中的查询字符串
    常用的正则验证
    此计算机当前已经连接限制为。。
    sharepoint 备份和还原site脚本
    sharepoint 删除list里的所有内容
    ajax调用服务的基本格式
    rest的config
  • 原文地址:https://www.cnblogs.com/gavinsp/p/4566691.html
Copyright © 2020-2023  润新知