HzuHtx


私信TA

用户名:hetangxin123

访问量:41197

签 名:

私はいつまでもレムが好きです。

等  级
排  名 29
经  验 14161
参赛次数 10
文章发表 76
年  龄 0
在职情况 学生
学  校 贺州学院
专  业 软件工程

  自我简介:

写不动,根本写不动

解题思路:

            最长不降子序列和最长上升子序列



#include <iostream>
#include <stdio.h>
#include <map>
#include <vector>
#include <algorithm>
#include <cstring>
using namespace std;
typedef long long ll;
const int MAXN = 101;
int dp[MAXN];
int ans[MAXN];
int n = 1;
int maxx, num;
void f1()
{
	for (int i = 1; i < n; i++)
	{
		dp[i] = 1;
		for (int j = 1; j < i; j++)
		{
			if (ans[j] > ans[i] && dp[i] < dp[j] + 1)
			{
				dp[i] = dp[j] + 1;
			}
		}
		if (maxx < dp[i])
			maxx = dp[i];
	}
}
void f2()
{
	for (int i = 1; i <= n; i++)
	{
		dp[i] = 1;
		for (int j = 1; j < i; j++)
		{
			if (ans[j] < ans[i] && dp[i] < dp[j] + 1)
			{
				dp[i] = dp[j] + 1;
			}
		}
		if (num < dp[i])
			num = dp[i];
	}
}
int main()
{
	while (cin >> ans[n])
		n++;
	f1();
	memset(dp, 0, sizeof(dp));
	f2();
	cout << maxx << endl << num << endl;
	return 0;
}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区