题目:一个序列有N个数:A[1],A[2],…,A[N],求出最长非降子序列的长度。(见动态规划---LIS)

 /*
题目:一个序列有N个数:A[1],A[2],…,A[N],求出最长非降子序列的长度。
*/
#include <stdio.h> unsigned max_len( int [] , size_t );
size_t b_point( int [] , size_t );
int max(size_t , size_t ); int main( void )
{ int arr[] = { , , , , , , , , , }; printf("%u\n" , max_len( arr , sizeof arr / sizeof arr[] ) ); return ;
} unsigned max_len( int a[] , size_t n )
{
if ( n <= 1u )
return n ; size_t m = b_point ( a , n ) ; return max( m , max_len ( a + m , n - m ) ) ; } size_t b_point ( int a[] , size_t n )
{
size_t i ; for ( i = 1u ; i < n ; i++ )
if ( a[i-] > a[i])
return i - 0u ; return i - 0u ;
} int max( size_t n1 , size_t n2 )
{
if ( n1 > n2 )
return n1; return n2;
}
 /*
题目:一个序列有N个数:A[1],A[2],…,A[N],求出最长非降子序列的长度。
*/
#include <stdio.h> unsigned max_len( int [] , size_t );
size_t b_point( int [] , size_t ); int main( void )
{
int arr[] = { , , , , , , , , , }; printf("%u\n" , max_len( arr , sizeof arr / sizeof arr[] ) ); return ;
} unsigned max_len( int a[] , size_t n )
{
size_t len = 0u ;
while ( n > 0u )
{
size_t mid = b_point( a , n ); if ( mid > len )
len = mid ; a += mid ;
n -= mid ;
}
return len ;
} size_t b_point ( int a[] , size_t n )
{
size_t i ; for ( i = 1u ; i < n ; i++ )
if ( a[i-] > a[i])
return i - 0u ; return i - 0u ;
}

非 动态规划---LIS的更多相关文章

  1. 2021.12.06 P2501 [HAOI2006]数字序列(动态规划+LIS)

    2021.12.06 P2501 [HAOI2006]数字序列(动态规划+LIS) https://www.luogu.com.cn/problem/P2501 题意: 现在我们有一个长度为 n 的整 ...

  2. BZOJ_1609_[Usaco2008_Feb]_Eating_Together_麻烦的聚餐_(动态规划,LIS)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1609 给出一串由1,2,3组成的数,求最少需要改动多少个数,使其成为不降或不升序列. 分析 法 ...

  3. 动态规划-LIS最长上升子序列

    优化链接 [https://blog.csdn.net/George__Yu/article/details/75896330] #include<stdio.h> #include< ...

  4. HDU - 1160 FatMouse's Speed 动态规划LIS,路径还原与nlogn优化

    HDU - 1160 给一些老鼠的体重和速度 要求对老鼠进行重排列,并找出一个最长的子序列,体重严格递增,速度严格递减 并输出一种方案 原题等于定义一个偏序关系 $(a,b)<(c.d)$ 当且 ...

  5. HDU-1051/POJ-1065 Wooden sticks 木棍子(动态规划 LIS 线型动归)

    嘤嘤嘤,实习半年多的小蒟蒻的第一篇博客(题解) 英文的: There is a pile of n wooden sticks. The length and weight of each stick ...

  6. POJ_1631_Bridging_Signals_(动态规划,LIS)

    描述 http://poj.org/problem?id=1631 铁路左右相连,要求去掉一些边,使得剩下的边不交叉,求剩余边数的最大值. Bridging signals Time Limit: 1 ...

  7. POJ_1065_Wooden_Sticks_(动态规划,LIS+鸽笼原理)

    描述 http://poj.org/problem?id=1065 木棍有重量 w 和长度 l 两种属性,要使 l 和 w 同时单调不降,否则切割机器就要停一次,问最少停多少次(开始时停一次). Wo ...

  8. 动态规划-LIS

    https://vjudge.net/contest/297216?tdsourcetag=s_pctim_aiomsg#problem/E #include<bits/stdc++.h> ...

  9. P1091 合唱队形题解(洛谷,动态规划LIS,单调队列)

    先上题目 P1091 合唱队形(点击打开题目) 题目解读: 1.由T1​<...<Ti​和Ti​>Ti+1​>…>TK​可以看出这题涉及最长上升子序列和最长下降子序列 2 ...

随机推荐

  1. RTSP 协议分析

    RTSP 协议分析1.概述: RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系中的一个应用层协议,由哥伦比亚大学.网景和RealNetwor ...

  2. 免费真机调试 -- Xcode7以上版本

    刚新安装了Xcode7 , 据说这个版本可以免费真机调试,于是用了一个新的AppID测试了,发现真的可以免费真机调试了呢!新的appId账号(随便一个苹果手机账号就行),没有支付每年的99美刀,也没有 ...

  3. SqlServer2008R2 修改表中列为自增列

    选定列,修改列属性标识规范中(是标识)为是,标识增量为1,标识种子为1 SQL语句:alter table 表名 add 列名 int IDENTITY(1,1) NOT NULL

  4. imx6dl i2c4 support

    imx6dl i2c4 support 最近的项目用到了imx6dl的i2c4,其实完全可以用gpio-i2c的方法来实现.既然imx6的datasheet中提到有4个i2c,那么一定可以生成i2c的 ...

  5. TermServDevices报错导致服务器死机(远程服务使用者必读)

    事件类型: 错误 事件来源: TermServDevices 事件 ID: 1111 描述:打印机 !!192.168.99.6!HP LaserJet 3050 Series PCL 5e 所需的驱 ...

  6. SQLServer DMV Query

    1.DMV Query to identify all active SQL Server Sessions The query below identifies all currently acti ...

  7. eclipse打开jar包出现乱码问题解决方法

    今天做项目时候,用eclipse打开.class文件出现乱码问题.jar编码和本地编辑器编码格式不对造成的错误. 首先我们打开eclipse,点击菜单下的window-->preferences ...

  8. 端口转发后执行putty连接------------------》VirtualBox+ubuntu_server

    login as: fleam fleam@127.0.0.1's password: Welcome to Ubuntu LTS (GNU/Linux --generic i686) * Docum ...

  9. box2dweb之关节joint(连接器)

    1 概述 前篇基础文章看完后基本上就应该对box2dweb能上手了,下面来介绍一下box2dweb非常重要的一个概念,关节(joint)也有叫连接器的,总之是一个意思.下面是关节详细的类库说明: BO ...

  10. 一个前端html模板处理引擎(javascript) - pure

    做后台开发(java/python)的同学开发web应用,对于前端页面生成技术并不陌生,像jsp,freemark等.开发UGC类型的互联网站,因为要SEO友好,所以一般都会在后台用模板引擎直接生成好 ...