首页 > 其他分享 >hdu 1003 最大最长子序列 dp

hdu 1003 最大最长子序列 dp

时间:2023-08-23 10:01:54浏览次数:41  
标签:hdu int sum sizen include 1003 scanf dp


我的dp思路是

记b[j]表示到到j位,最大最长的子序列的和

则可得状态转移方程b[j]=max(b[j-1]+a[j],a[j]);

因为每个数都有两种状态,要么和前面相连,要么自己相连;

让后再比较出来最大值;

一下是我的代码

#include<stdio.h>
 #include<stdlib.h>
 #include<stdlib.h>
 #include<math.h>
 #include<iostream>
 #include<algorithm>
 using namespace std;


 const int sizen=110000;
 int T;
 int n;
 int i;
 int k;
 int b[sizen];
 int from,to;
 int sum;
 int be,st;
 int cnt=0;
 bool flag=false;


 int main()
 {
     scanf("%d",&T);
     while(T--)
     {
         from=1;
         to=1;
         sum=-99999999;
         b[0]=0;
         scanf("%d",&n);
         for(i=1;i<=n;i++)
         {
             scanf("%d",&k);
             if(b[i-1]+k>=k)
                 b[i]=b[i-1]+k;
             else
             {
                 from=i;
                 b[i]=k;
             }
             if(sum<b[i])
             {
                 sum=b[i];
                 be=from;
                 st=i;
             }
         }
         if(!flag)
             flag=true;
         else
             printf("\n");
         printf("Case %d:\n",++cnt);
         printf("%d %d %d\n",sum,be,st);
     }
     return 0;
 }

标签:hdu,int,sum,sizen,include,1003,scanf,dp
From: https://blog.51cto.com/u_16234093/7199347

相关文章

  • hdu 4055
    http://acm.hdu.edu.cn/showproblem.php?pid=4055#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>#include<iostream>#include<algorithm>usingnamespacestd;constintmod=1000000007;constintsiz......
  • hdu 4055 dp
    http://acm.hdu.edu.cn/showproblem.php?pid=4055#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>#include<iostream>#include<algorithm>usingnamespacestd;constintmod=1000000007;cons......
  • hdu 2191 多重背包
    http://acm.hdu.edu.cn/showproblem.php?pid=2191#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>#include<iostream>#include<algorithm>usingnamespacestd;structele{intprice;......
  • 使用 DPO 微调 Llama 2
    简介基于人类反馈的强化学习(ReinforcementLearningfromHumanFeedback,RLHF)事实上已成为GPT-4或Claude等LLM训练的最后一步,它可以确保语言模型的输出符合人类在闲聊或安全性等方面的期望。然而,它也给NLP引入了一些RL相关的复杂性:既要构建一个好的奖励函数,并训......
  • dp学习笔记
    前言:因为本人\(dp\)实在太差了,故此挖个新坑。\(dp\)的一般套路是:设计状态,要注意一定要不重不漏,所有能影响到答案的数据都要包含到状态里面。初始化,基本上是第一项转移,要注意无后效性,面面俱到。可以关注数据范围,有时候范围会给我们以提醒。基本技巧:状态设计:......
  • UDP协议的收发操作
    大多数的应用程序都用TCP协议来收发数据,但当然也有例外。有些应用程序不使用TCP协议,而是使用UDP协议来收发数据。向DNS服务器查询IP地址的时候我们用的也是UDP协议。不需要重发的数据用UDP发送更高效由于我们需要将数据高效且可靠地发送给接收方。为了实现可靠性,tcp协议要求确认......
  • 20230713 java.util.concurrent.ThreadPoolExecutor
    介绍java.util.concurrent.ThreadPoolExecutorpublicclassThreadPoolExecutorextendsAbstractExecutorServiceAPI构造器ThreadPoolExecutor(intcorePoolSize,intmaximumPoolSize,longkeepAliveTime,TimeUnitunit,BlockingQueue<Runnable>workQueue)Thr......
  • 「HDU1166」敌兵布阵
    前言题目好多废话大意有一个序列,开始时每一位都有一个值,然后是若干个命令:Addij,表示第\(i\)位增加\(j\);Subij,表示第\(i\)位减少\(j\);Queryij,表示从第\(i\)位到地\(j\)位的总和;End,表示结束,在每组数据最后出现。思路这题一眼盯真,可以用线段树或者树状数组解决,都是单......
  • java怎么设置定时任务(通过Executors.newScheduledThreadPool(1)方法)
    importjava.text.SimpleDateFormat;importjava.util.Date;importjava.util.concurrent.Executors;importjava.util.concurrent.ScheduledExecutorService;importjava.util.concurrent.TimeUnit;publicclassdingshi{publicstaticvoidmain(String[]args)......
  • sokit使用方法,检测TCP和UDP端口响应。
    输入IP和端口sokit中文版下载链接:https://github.com/sinpolib/sokit/releases/download/v1.3.20111130/sokit-1.3-win32-chs.zip......