数组 与水

    //#include "header.h"	//AnycodeX includes the header.h by default, needn‘t cancle the notation.
#include <iostream>
using namespace std;
int a[]={3,2,4,1,5};//4
int n=5;
/********************
      E
    E E
  E E E
  EEE E
  EEEEE
*********************/
void fun()
{
int l=0,r=n-1,lmax=a[0],rmax=a[n-1],count=0;
int min=a[0];
int state=0;
int k=3; 
 while(r-l > 1)
  {
  state=0;
   (lmax>rmax)?(min=rmax,state=1):(min=lmax);
  cout<<min<<endl;
  if(state == 0)
  {
    if(min-a[l+1]>0)  {    count+=min-a[l+1];l++;lmax < a[l]?lmax=a[l]:0;}
    else{l++;lmax = a[l];}
  }else
  {
    if(min-a[r-1]>0)  {    count+=min-a[r-1];r--;rmax < a[r]?rmax=a[r]:0;}
    else{r--;rmax = a[r];}
  }
  }
cout<<count;
}
void fun2()
{
    int l=0,r=n-1,lmax=a[0],rmax=a[n-1],count=0;
 while(r-l > 1)
  {
    if(lmax<rmax)
    {
         l++;
        count+=(lmax-a[l])>0?(lmax-a[l]):(lmax=a[l],0);
    }
    else
    {
         r--;
        count+=(rmax-a[r])>0?(rmax-a[r]):(rmax=a[r],0);
    }
 
  }
cout<<count;
}
    
 
int main()
{
	cout << "Hello,C++ world of AnycodeX!" << endl;
 fun2();

	return 0;
}
时间: 2024-12-28 15:46:37

数组 与水的相关文章

二维树状数组(水题) POJ1195

前段时间遇到线段树过不了,树状数组却过了的题.(其实线段树过得了的) 回忆了下树状数组. 主要原理,还是二进制位数,每一项的和表示其为它的前((最后一位1及其后)的二进制数)和,可从二进制图来看.(用线段树想一想其实只是线段树编号不同而已,本质类似) 写了下二维树状数组,几乎和一维相同,也没必要不同. #include <cstdio> #include <cstring> int l,r,x,y,n,a,p,sum[1125][1125]; inline int lowbit(i

leetcode_162题——Find Peak Element(数组,水题)

Find Peak Element Total Accepted: 24838 Total Submissions: 79757My Submissions Question Solution A peak element is an element that is greater than its neighbors. Given an input array where num[i] ≠ num[i+1], find a peak element and return its index.

13年山东省赛 Boring Counting(离线树状数组or主席树+二分or划分树+二分)

转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud 2224: Boring Counting Time Limit: 3 Sec  Memory Limit: 128 MB Description In this problem you are given a number sequence P consisting of N integer and Pi is the ith element in the sequence.

POJ2774 后缀自动机&amp;后缀数组

http://poj.org/problem?id=2774 题目大意就是给两个字符串,求最长公共子串.好像可以哈希切掉,但是为了练一练后缀数组以及学一学后缀自动机,我用不同方法终于A掉了这道题. 后缀数组:就是求出height数组然后扫一遍,求出满足条件的最大值(满足条件是指height所指的两个后缀要没有公共部分),是后缀数组的水题 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 usin

OI模板(2) —— 树状数组(BIT)

在codevs上有模板题目,虽说是线段树模板,不过就题目描述来说,树状数组轻松水过 传送门:http://codevs.cn/problem/1080/ 能用线段树就不要用平衡树,能用树状数组就不要用线段树,这话是显然的,代码长度.难道上都有较大区别,BIT是最简单的一个 1 #include <algorithm> 2 #include <iostream> 3 #include <cstring> 4 #include <cstdlib> 5 #incl

杭电ACM分类

杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze 广度搜索1006 Redraiment猜想 数论:容斥定理1007 童年生活二三事 递推题1008 University 简单hash1009 目标柏林 简单模拟题1010 Rails 模拟题(堆栈)1011 Box of Bricks 简单题1012 IMMEDIATE DECODABILITY

【转】对于杭电OJ题目的分类

[好像博客园不能直接转载,所以我复制过来了..] 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze 广度搜索1006 Redraiment猜想 数论:容斥定理1007 童年生活二三事 递推题1008 University 简单hash1009 目标柏林 简单模拟题1010 Rails 模拟题(堆栈)1011 Box of Bricks 简单题1012 IMMEDI

转载:hdu 题目分类 (侵删)

转载:from http://blog.csdn.net/qq_28236309/article/details/47818349 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029. 1032.1037.1040.1048.1056.1058.1061.1070.1076.1089.1090.1091.1092.1093. 1094.1095.1096.1097.1098.1106.1108.1157.116

leetcode&amp;编程之美——博文目录

leetcode刷题整理: 1——Two Sum(哈希表hashtable,map) 2——Add Two Numbers(链表) 3——Longest Substring Without Repeating Characters(set,哈希表,两个指针) 9——Palindrome Number (数学问题) 11——Container With Most Water(两个指针) 12——Integer to Roman(string,数学问题) 13——Roman to Integer(s