hdu 6205 card card card 最大子段和
#include<iostream>
#include<deque>
#include<memory.h>
#include<stdio.h>
#include<map>
#include<string>
#include<algorithm>
#include<vector>
#include<math.h>
#include<stack>
#include<queue>
#include<set>
#define INF 1<<29
using namespace std;
const int maxn = ; int A[maxn];
int B[maxn];
int C[maxn*+];//A,B数组的差,在尾部复制一遍,模拟循环
int D[maxn*+];//C数组的前缀和 int N; inline void scan_d(int &ret){
char c;
ret = ;
while ((c = getchar()) < '' || c > '');
while (c >= '' && c <= '')
{
ret = ret * + (c - ''), c = getchar();
}
} int main (){ while(~scanf("%d", &N)){ memset(D,,sizeof(D)); for(int i=;i<=N;i++)
scan_d(A[i]);
for(int i=;i<=N;i++){
scan_d(B[i]); C[i]=A[i]-B[i];
C[N+i]=A[i]-B[i];
D[i]=C[i]+D[i-];
} for(int i=N+;i<=N+N;i++){
D[i]=C[i-N]+D[i-];
} for(int i=;i<=N;i++){
for(int j=i;j<=i+N;j++){
if(D[j]-D[i-]<)//如果不能取了,即i~j的和变为负数了
{
i+=j-i;//把前面i堆放到后面去,然后继续判断
break;
} //如果成功取完,输出i-1,即是答案
if(j==N){
printf("%d\n",i-);
i=N;
}
}
} }
return ;
}
最大字段和 O(N)
//3d4-1 最大子段和问题的动态规划算法
#include "stdafx.h"
#include <iostream>
using namespace std; int MaxSum(int n,int *a); int main()
{
int a[] = {-,,-,,-,-}; for(int i=; i<; i++)
{
cout<<a[i]<<" ";
} cout<<endl;
cout<<"数组a的最大连续子段和为:"<<MaxSum(,a)<<endl; return ;
} int MaxSum(int n,int *a)
{
int sum=,b=;
for(int i=; i<=n; i++)
{
if(b>)
{
b+=a[i];
}
else
{
b=a[i];
}
if(b>sum)
{
sum = b;
}
}
return sum;
}
hdu 6205 card card card 最大子段和的更多相关文章
- 【BZOJ4391】[Usaco2015 dec]High Card Low Card(贪心)
[BZOJ4391][Usaco2015 dec]High Card Low Card(贪心) 题面 BZOJ 题解 预处理前缀后缀的结果,中间找个地方合并就好了. #include<iostr ...
- 【题解】P3129高低卡(白金)High Card Low Card
[题解][P3129 USACO15DEC]高低卡(白金)High Card Low Card (Platinum) 考虑贪心. 枚举在第几局改变规则,在改变规则之前,尽量出比它大的最小的牌,在改变规 ...
- 2017ICPC沈阳网络赛 HDU 6205 -- card card card(最大子段和)
card card card Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- hdu 6205 card card card 尺取法
card card card Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- card card card HDU - 6205
As a fan of Doudizhu, WYJ likes collecting playing cards very much. One day, MJF takes a stack of ca ...
- hdu 6205 card card card
https://vjudge.net/contest/184514#problem/L题意:排成一行的一堆牌,每堆牌都有一定数量的牌,然后每堆牌对应有一个惩罚值.一开始所有的牌都是正面向下的,并且在游 ...
- HDU 6205 (模拟) card card card
题目链接 Problem Description As a fan of Doudizhu, WYJ likes collecting playing cards very much. One day ...
- HDU 6205 card card card ( 思维 )
题意 : 给定两个序列 a 和 b ,保证 a 数列的和 == b数列的和,从头到尾考虑 (a[i] - b[i]) 的前缀和,直到前缀和为负数则无法进行下去,所得的便是a[1~i]的和,现在有一个操 ...
- hdu 6205: card card card【输入挂】
题目链接 感谢 http://blog.csdn.net/txgang/article/details/77568491 以下供参考 getchar读入法 2683MS FastIO法 MX=1e2 ...
随机推荐
- C++重写实践&与java的差异
C++重写父类方法后,父类中同名的方法在子类中就无法被调用,回报这个问题: java中是没有这个问题的,显然java设计者在设计的时候有意解决了这个问题. C++实践代码: #include < ...
- 七、创建UcRESTTemplate请求管理器
一.创建UcRESTTemplate管理器封装 import com.alibaba.fastjson.JSON; import org.apache.http.client.config.Reque ...
- CSS + ul li 横向排列的两种方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- select框动态添加选项
$.ajax({ url : "${staticServer }/ywgl/zkpzgl/zkfkgl/showBillType.htm", //ajax请求路径 type : & ...
- PythonScript_demo--搭建PXE服务器
前言 是一个测试向的Demo,在实验环境中改改还是可以用的,有助理解PXE服务器的原理.可以结合PXE服务器原理细节来看,传送门:点这里 软件环境 系统 RHEL7 软件 Python 27 RHEL ...
- java:Hibernate框架4(延迟加载(lazy),抓取(fetch),一级缓存,get,load,list,iterate,clear,evict,flush,二级缓存,注解,乐观锁和悲观锁,两者的比较)
1.延时加载和抓取: hibernate.cfg.xml: <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-co ...
- 未能加载文件或程序集“microsoft.Build.Engine, Version=3.5.0.0,...”或它的摸一个依赖项。
今天想打开IIS服务,然后点错了,不小心关掉了.net组件,结果vs就一直打不开项目,最后在网上查到了原因,打开 控制面板->程序和功能->打开或关闭功能 在里面勾选Microsoft . ...
- 模板变量设置 set 和 with
from flask import Flask,render_template app = Flask(__name__) @app.route('/') def hello_world(): ret ...
- break和continue关键字的使用
一,break和continue关键字的使用 public class BreakContinueTest { public static void main(String args[]) { for ...
- PostgreSQL数据库表的内部结构
A page within a table contains three kinds of data described as follows: heap tuple(s) – A heap tupl ...