最大子串和

#include<cstdio>
#include<cstring>const int maxn=100000+10;
int n;
int x[maxn];
int fx[maxn];
int a[maxn];
int sum[maxn];
int L[maxn],R[maxn];const int INF=0x7FFFFFFF;int max(int a,int b)
{if(a>b) return a;return b;
}
int main()
{int N;while(~scanf("%d",&N)){int SS=0;for(int i=1;i<=N;i++){scanf("%d",&x[i]);SS=SS+x[i];}for(int i=1;i<=N;i++)fx[i]=(1890*x[i]+143)%10007;for(int i=1;i<=N;i++) a[i]=fx[i]-x[i];sum[1]=a[1]; L[1]=1;R[1]=1;for(int i=2;i<=N;i++){if(sum[i-1]+a[i]>=a[i]){sum[i]=sum[i-1]+a[i];L[i]=L[i-1];R[i]=i;}else{sum[i]=a[i];L[i]=i;R[i]=i;}}int Max=-INF;for(int i=1;i<=N;i++)if(sum[i]>Max) Max=sum[i];int ans=max(SS,SS+Max);printf("%d\n",ans);}return 0;
}

转载于:https://www.cnblogs.com/zufezzt/p/5003605.html

HDU 5586 Sum相关推荐

  1. HDU 5586 Sum (预处理 + 动态规划)

    题目链接:传送门 题意:给你n个数字,然后你可以对这n个数组的任意一个子区间进行一个操作,\(f(x)=(1890x+143)mod10007\),或者不进行操作,问你怎样操作能使得加和最大解题思路: ...

  2. HDU.1001 Sum Problem

    原题 HDU.1001 Sum Problem 分类 杂题 题意 计算从1到正整数n的累加和. 输入/输出 要求与格式 输入内容 每行输入一个正整数 输出结果 结果为累加和 输出格式 每个输出结果独占 ...

  3. hdu 1258 Sum It Up(回溯算法)

    题意:从给定的n个正整数中选出m个数(m <= n)使得这m个数的和为给定的total 解法:回溯 /* Author: ACb0y Date: 2010-11-11 ProblemId: hd ...

  4. hdu 5586(最大连续子序列和)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5586 官方题解: 令A i =f(A i )−A i  ,然后求一遍最大连续子序列和就能知道最多能增加 ...

  5. hdu 4676 Sum Of Gcd 莫队+phi反演

    Sum Of Gcd 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=4676 Description Given you a sequence of ...

  6. HDU 1258 Sum It Up

    这题郁闷了,排序过不了,后来仔细想想不用排序, 于是果断删了,没想到删了再杭电能过,在北大不能过,真郁闷了 这题是以简单DFS,在搜到时把结果存起来,然后再暴力搜索,看是否已存在这样的sum,最后一次 ...

  7. hdu 4407 Sum

    http://acm.hdu.edu.cn/showproblem.php?pid=4407 题意:给定初始n个数1..n,两个操作,①1 x y p  询问第x个数到第y个数中与p互质的数的和; ② ...

  8. hdu 3022 Sum of Digits

    http://acm.hdu.edu.cn/showproblem.php?pid=3022 题意: 最多不超过10000组数据,每组数据给定两个数n,m,求一个最小的数,使得该数每一位之和等于n,每 ...

  9. HDU 5776 sum (BestCoder Round #85 A) 简单前缀判断+水题

    分析:就是判断简单的前缀有没有相同,注意下自身是m的倍数,以及vis[0]=true; #include <cstdio> #include <cstdlib> #includ ...

  10. hdu max sum

    这题跟求最大连续数列一样的,稍微不同的是只要把值改为标号就可以了. #include<stdio.h> #include<string.h> #include<stdli ...

最新文章

  1. Leetcode 118:Pascal's Triangle 杨辉三角
  2. CCNA 配置试验之一 静态路由
  3. jsp页面点击显示影藏div的一个方法
  4. Apache SkyWalking的架构设计【译文】
  5. Codeforces Round #655 (Div. 2) E. Omkar and Last Floor 区间dp + 巧妙的状态设计
  6. java rx.observable_Rxjava2 Observable的条件操作符详解及实例
  7. 解决方案:重复抢单(Redis原子计数器incr)
  8. ZigBee学习计划
  9. SQLite数据库操作类
  10. vue 后端数据成功返回 页面不渲染_vue能获取到数据数据却渲染不到页面上,为什么?...
  11. 基于目标检测的电车充电插孔检测实践
  12. 以下是adb工具包最新Google官方版下载地址:
  13. 计算机打印共享打印机,教您电脑打印机共享怎么设置
  14. yxy小蒟蒻的201111总结
  15. PS解决“无法使用快速选择,因为没有足够内存(RAM)”
  16. 必背C语言算法 C语言求自然底数e
  17. SHR之员工合同解除
  18. 【Matlab瑕疵检测】阙值瓶盖瑕疵检测【含源码 730期】
  19. DIY智能小车篇(一):结构模块
  20. 递归一题总结(OJ P1117倒牛奶)

热门文章

  1. How to study Watir?
  2. html to pdf
  3. PYTHON之计算机语言基础知识 —— 字符编码
  4. Avalon二数据填充
  5. python super()
  6. jQuery和$、jQuery(function(){})和(function(){})(jQuery)
  7. Transfrom在64bit服务下面无法运行
  8. javabean封装mysql
  9. “七”待已久,“夕”望是你,“快”来学习,“乐”在其中!
  10. 软件验收测试报告报价,软件验收测试介绍和软件验收报告的费用是多少?