博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
codeforces 407 div1 A题(Functions again)
阅读量:6787 次
发布时间:2019-06-26

本文共 1891 字,大约阅读时间需要 6 分钟。

codeforces 407 div1 A题(Functions again)

Something happened in Uzhlyandia again... There are riots on the streets... Famous Uzhlyandian superheroes Shean the Sheep and Stas the Giraffe were called in order to save the situation. Upon the arriving, they found that citizens are worried about maximum values of the Main Uzhlyandian Function f, which is defined as follows:In the above formula, 1?≤?l?

题解:存在两种解决方案。


方案1:

如果把转化后的数列看成一个新的数列,观察可得:

  1. 相邻位的数字总是异号的
  2. 每个数字都有正负两种可能的存在
    因此可以将这个数列转化为两种形式
    +-+-+-+-.....
    -+-+-+-+.....
    我们只要对这两个数列求最大子序列和即可
方案2:

这是一个更加优美的解法,设b[i]为l为i的最大序列和,c[i]为l为i的最小序列和

b[i]=max(-c[i+1],0)+abs(a[i]-a[i+1])
c[i]=min(-b[i+1],0)+abs(a[i]-a[i+1])

方案1:

import java.io.*;import  java.util.*;public class cf407c {      static final int N=(int)1e5+10;      static final long inf=(long)1e10;      static int a[]=new int[N];      static int b[]=new int[N];      static int c[]=new int[N];      public static void main(String[] args){          Scanner cin=new Scanner(new InputStreamReader(System.in));          while(cin.hasNext()){              int n=cin.nextInt();              for(int i =0; i

方案2:

import java.io.*;import  java.util.*;public class cf407c {      static final int N=(int)1e5+10;      static final long inf=(long)1e10;      static int a[]=new int[N];      static long b[]=new long[N];      static long c[]=new long[N];      public static void main(String[] args){          Scanner cin=new Scanner(new InputStreamReader(System.in));          while(cin.hasNext()){              int n=cin.nextInt();              for(int i =0; i
=0;i--){ b[i]=Math.max(-c[i+1],0)+Math.abs(a[i]-a[i+1]); c[i]=Math.min(-b[i+1],0)+Math.abs(a[i]-a[i+1]); ans=Math.max(ans,b[i]); } System.out.println(ans); } cin.close(); }}

转载于:https://www.cnblogs.com/zsyacm666666/p/6792152.html

你可能感兴趣的文章
小凡带你搭建本地的光盘yum源
查看>>
java 求最大公约数和最小公倍数
查看>>
vmware workstation的bridged NAT host-only区别与适用场景简介
查看>>
Linux基础知识
查看>>
Struts2中的OGNL详解
查看>>
隐藏/屏蔽服务器信息与web软件版本信息
查看>>
ifstat 网络流量统计工具
查看>>
VLC 2.2.6 Windows下搭建 rtsp流媒体服务器
查看>>
Django2 model操作数据库
查看>>
使用Azure Policy限制所有ASM资源
查看>>
在win7系统下使用TortoiseGit(乌龟git)简单操作Git@OSC
查看>>
强大的ghost.py 使用实例
查看>>
快速搭建NTP时间服务器
查看>>
网络基础
查看>>
碰到 oracle 10g ORA-00257
查看>>
服务器群集实验 ——SQL群集2
查看>>
企业级监控工具cacti安装配置全过程
查看>>
Hibernate的模块结构
查看>>
锁机制
查看>>
gentoo添加自启动
查看>>