LIS_51CTO博客
/* https://vijos.org/p/1028 */ #include<iostream> #include<cstdio> #include<cstring> #define rep(i,x,y) if ((x)<=(y)) for (register int i=(x);i<=(y);i ...
转载 2021-09-06 09:49:00
65阅读
2评论
代码#include<cstdio>#include<cstring>#define MAXN 40005int arr[MAXN],ans[MAXN],len;int binary_search(int i){ int left,right,mid; left=0,right=len; while(left<right){ ...
原创 2021-07-12 17:45:38
157阅读
F - LIS on Tree(LIS&DFS)题目传送门题意:给定一棵树,求所有结点到根结点的LISLISLIS长度。思路:显然根据LISLISLIS的贪心思想,我们可以对其在树上进行操作,与普通的LISLISLIS不同的是,一开始我们可以将存放LISLISLIS的数组进行初始化为infinfinf,这样每次只需要进行二分操作就行了,省去了直接添加到数组末尾的那一步。由于不同L...
原创 2022-01-22 14:50:37
44阅读
F - LIS on Tree(LIS&DFS) 题目传送门 题意:给定一棵树,求所有结点到根结点的LISLISLIS长度。 思路:显然根据LISLISLIS的贪心思想,我们可以对其在树上进行操作,与普通的LISLISLIS不同的是,一开始我们可以将存 放LISLISLIS的数组进行初始化为infinfinf,这样每次只需要进行二分操作就行了,省去了直接添加到数组末尾的那一步。由于 不同L...
原创 2021-08-10 09:22:11
115阅读
Problem Description In computer science, the longest increasing subsequence problem is to find a subsequence of a given sequence in which the subseque
转载 2017-06-02 09:14:00
98阅读
2评论
原dp[i]代表以i结尾的LIS的长度 现在dp[i]代表长度为i的LIS的最小元素 dp一定为一个递增数组 遍历a,当a[i]比当前LIS的最后一个数字还大,则长度++ 否则就二分查找dp数组中第一个>=a[i]的数值,并把它改为a[i] #include <bits/stdc++.h> usin
转载 2021-02-22 11:46:00
160阅读
2评论
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5087 题意: 求第二长的最长递增序列的长度 分析: 用step[i]表示以i结尾的最长上升序列的长度,dp[i]表示到i的不同的最长的子序列的个数 然后最后推断最长的子序列的个数是否大于1是的话输出Ma
转载 2016-04-12 16:38:00
106阅读
2评论
Bellovin Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 302 Accepted Submission(s): 148 Proble
原创 2021-07-21 16:18:20
97阅读
飞翔时间限制:3000 ms | 内存限制:65535 KB难度:4描述鹰最骄傲的就是翱翔,但是鹰们互相都很嫉妒别的鹰比自己飞的快,更嫉妒其他的鹰比自己飞行的有技巧。于是,他们决定举办一场比赛,比赛的地方将在一个迷宫之中。这些鹰的起始点被设在一个N*M矩阵的左下角map[1,1]的左下角。终点被设定...
转载 2015-11-15 21:20:00
94阅读
2评论
//////////////////////...
转载 2018-04-25 22:04:00
62阅读
2评论
★300. 最长递增子序列2111. 使数组 K 递增的最少操作次数
原创 2023-05-22 10:36:38
71阅读
# 如何实现"lis打乱java" ## 流程步骤 下面是实现"lis打乱java"的流程步骤: | 步骤 | 操作 | | ------ | ------ | | 1 | 导入所需的包 | | 2 | 创建一个lis列表 | | 3 | 使用Collections.shuffle()方法打乱lis列表 | | 4 | 输出打乱后的lis列表 | ## 具体操作步骤 ### 步骤一:导入
原创 5月前
37阅读
最长上身子序列的长度等于不下降子序列的个数/* ***********************************************Author :PeterBishopCreated Time :2019年03月18日 星期一 21时56分54秒File Name :t.cpp************************************...
原创 2022-01-30 16:55:03
61阅读
最长上身子序列的长度等于不下降子序列的个数/* ***********************************************Author :PeterBishopCreated Time :2019年03月18日 星期一 21时56分54秒File Name :t.cpp************************************...
原创 2021-07-13 16:25:12
49阅读
组合数学+对称性原理之翻折法
转载 2020-03-19 09:20:00
232阅读
2评论
矩形嵌套 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4
转载 2016-03-01 22:01:00
52阅读
2评论
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemC
转载 2019-04-26 22:11:00
55阅读
2评论
1 #include <cstdio> 2 #include <cstring> 3 using namespace std; 4 5 char str[10010]; 6 int ans[10010]; 7 8 int main() 9 {10 int i,j,k;11 int T;12 scanf("%d%*c",&T);13 while(T--)14 {15 memset(str,0,sizeof(str));16 memset(ans,0,sizeof(ans));17 18 scanf("%...
转载 2012-05-24 12:59:00
43阅读
2评论
//LIS 最长上升子序列 o(n^2)/*arr[k]>arr[i]&&dp[k]<dp[i]+11 3 4 2 5 2 2 2 2 3 2 3 2 4*/#include #include #include using namespace std;const int maxn=1000+10;int arr[maxn],dp[maxn]; //d
原创 2023-08-15 17:28:59
80阅读
Super Jumping! Jumping! Jumping!Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 28091    Accepted Submission(s): 12529Problem Descript
原创 2023-08-15 17:29:29
44阅读
  • 1
  • 2
  • 3
  • 4
  • 5