一看区间操作,很容易想到差分

所以就是先差分,然后为了保证最小步数,把政府差分抵消,也就相当于原数组区间加减

第二问,因为差分数组抵消之后不为0就需要使用n+1的虚拟位置,而这个的值其实没有,所以我们可以在这个抵消后的数的范围内随意操作,也就是任意取值

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
const int N=100005;
long long n,a[N],c[N],t1,t2;
int read()
{
int r=0,f=1;
char p=getchar();
while(p>'9'||p<'0')
{
if(p=='-')
f=-1;
p=getchar();
}
while(p>='0'&&p<='9')
{
r=r*10+p-48;
p=getchar();
}
return r*f;
}
int main()
{
n=read();
for(int i=1;i<=n;i++)
a[i]=read();
for(int i=2;i<=n;i++)
{
c[i]=a[i]-a[i-1];
if(c[i]>0)
t1+=c[i];
else
t2-=c[i];
}
printf("%lld\n%lld\n",max(t1,t2),abs(t1-t2)+1);
return 0;
}

最新文章

  1. fwrite写入文件不成功bug
  2. python split函数
  3. js活动倒计时
  4. Sublime Text 2 配置及其使用
  5. 【CSS3】---文本阴影text-shadow
  6. Python本地化例子 - gettext 模块
  7. 导出kettle数据转换设置
  8. Mactype 解决字体出现剃尾
  9. 7_Table Views
  10. SQL server 提示“代理XP”被关闭的解决方法
  11. angular.js升序降序过滤器
  12. webpack 学习心得(一)
  13. GoldenGate 传统抽取进程随 DataGuard 主备快速切换的方案(ADG 模式)
  14. HTTP协议扫盲(四)HTTP协议进阶 - MIME类型
  15. gitlab6 配置的几个问题说明
  16. 分享腾讯云的Linux服务器连接速度很慢的解决心得(原创)
  17. Linux 配置ssh 免密码登录
  18. Linux-02
  19. vscode 开发 Java web 急速教程
  20. POJ - 3159(Candies)差分约束

热门文章

  1. eslint (js代码检查)
  2. POJ 2192 【DP】
  3. MongoDB学习day08--Mongoose索引、Mongoose内置方法、扩展Mongoose Model的静态方法和实例方法
  4. 2018.11.5 PION模拟赛
  5. 静态网页怎样实现动态交互?-JavaScript
  6. USACO castle
  7. poj 1426 Find The Multiple ( BFS+同余模定理)
  8. MySQL基础笔记(一) SQL简介+数据类型
  9. 创业公司做数据分析(四)ELK日志系统
  10. mac for smartSVN9 (8,9)破解方法 附smartSvn_keygen工具图文