本文主要是介绍2181:Jumping Cows,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
网址如下:
OpenJudge - 2181:Jumping Cows
(这是我拿去翻译的版本)
简单来说,题目要求我们求出一个子串,在奇数位的数加,偶数位的数减,求总的最大值
用贪心就可以做了
在波峰的时候加,波谷的时候减
代码如下:
#include<cstdio>const int maxP = 150000;int P, val[maxP], ans;int main(void)
{scanf("%d", &P);for(int i = 0; i < P; i++) scanf("%d", &val[i]);bool state = true;for(int i = 0; i < P; i++)if(state){//奇数位if(i == P - 1 || val[i] > val[i + 1]){ans += val[i]; state = false;}}else{//偶数位if(i != P - 1 && val[i] < val[i + 1]){ans -= val[i]; state = true;}}printf("%d", ans);return 0;
}
这篇关于2181:Jumping Cows的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!