bzoj3043: IncDec Sequence 差分
来源:互联网 发布:c语言temp 编辑:程序博客网 时间:2024/06/05 07:47
明显要求最后差分数列除第一项都是0的情况。然而为什么答案是只用统计上升和下降的差分呢????
有个比较牵强的说法,>0的差分其实是指后面连续一段降的话只需要上升的差分这么多。
而<0的话其实是把后面连续一段升高为相同高度所需的操作数。
如果你升高的话只能连续升高,或下降的话只能连续下降。因为上升的话后面所有的数都上升了,如果你再下降的话,就会有重复的多余操作。下降同理。
#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<algorithm>#define ll long long#define inf 1000000000using namespace std;int read(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();} while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();} return x*f;}ll ans1,ans2;int n;int a[100005];int main(){ n=read(); for(int i=1;i<=n;i++)a[i]=read(); for(int i=2;i<=n;i++) if(a[i]>a[i-1])ans1+=a[i]-a[i-1]; else ans2+=a[i-1]-a[i]; printf("%lld\n%d",max(ans1,ans2),abs(ans1-ans2)+1); return 0;}
0 0
- bzoj3043: IncDec Sequence 差分
- 【BZOJ3043】IncDec Sequence
- [BZOJ3043] IncDec Sequence
- 【BZOJ】【P3043】【IncDec Sequence】【题解】【差分】
- BZOJ 3043 IncDec Sequence 差分
- bzoj 3043: IncDec Sequence 差分
- 【BZOJ 3043】 IncDec Sequence 差分+智商
- IncDec Sequence
- IncDec Sequence
- [BZOJ 3043]IncDec Sequence
- 3043: IncDec Sequence
- CODEVS P2498 IncDec Sequence
- 3043: IncDec Sequence
- 数论+差分 hdu1121 Complete the Sequence
- bzoj 3043 wikioi 2498 IncDec Sequence
- BZOJ系列3043《IncDec Sequence》题解
- hdu 1121 Complete the Sequence(DP多项式差分)
- HDU 1211 Complete the Sequence(差分方法)
- verilog中阻塞和非阻塞的区别
- 感觉快到了不惑的年龄了
- Android控件——ToggleButton
- Trie树(字典树)HDU——1251
- select、poll、epoll之间的区别总结[整理]
- bzoj3043: IncDec Sequence 差分
- 基于NDK的Android防破解& Android防破解 【转载】
- hdu 1181
- 大型网站系统架构的演化
- UIScrollView的delaysContentTouches与canCencelContentTouches属性
- POJ 2828 Buy Tickets(线段树·插队)
- 代码签名
- MySQL命令行登陆
- UML——统一建模语言