郑州大学算法设计与分析实验4

1

cpp 复制代码
#include <bits/stdc++.h> 
#define rep(i,a,b) for(register int i = (a); i <= (b); ++i)
#define fep(i,a,b) for(register int i = (a); i >= (b); --i)
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define ull unsigned long long
#define db double
#define endl '\n'
#define debug(a) cout<<#a<<"="<<a<<endl;
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define INF 0x3f3f3f3f 
#define x first
#define y second
using namespace std;

const int N = 110;
int t, n;
int f[N][N], a[N][N];

void solve()
{
	cin >> n;
	rep(i,1,n)	rep(j,1,i)	cin >> a[i][j];
	rep(i,1,n)	rep(j,1,i)
	{
		f[i][j] = a[i][j];
		int t = 0;
		if(i-1>=1)	t = max(t, f[i-1][j]);
		if(j-1>=1 && i-1>=1)	t = max(t, f[i-1][j-1]);
		f[i][j] += t;
	}
	int ans = 0;
	rep(j,1,n)	ans = max(ans, f[n][j]);
	cout << ans << endl;
}

int main()
{
	IOS	
//	freopen("1.in", "r", stdin);
//	cin >> t;
//	while(t --)	
	solve();
	return 0;
}

2

cpp 复制代码
#include <bits/stdc++.h> 
#define rep(i,a,b) for(register int i = (a); i <= (b); ++i)
#define fep(i,a,b) for(register int i = (a); i >= (b); --i)
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define ull unsigned long long
#define db double
#define endl '\n'
#define debug(a) cout<<#a<<"="<<a<<endl;
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define INF 0x3f3f3f3f 
#define x first
#define y second
using namespace std;


const int N = 1010;
int t, n, m;
char a[N], b[N];
int f[N][N];

void solve()
{
	cin >> (a+1);
	cin >> (b+1);
	n = strlen(a+1);
	m = strlen(b+1);
	rep(i,1,n)	rep(j,1,m)
	{
		f[i][j] = max(f[i-1][j], f[i][j-1]);
		if(a[i] == b[j])	f[i][j] = max(f[i][j], f[i-1][j-1] + 1);
	} 
	cout << f[n][m] << endl;
}

int main()
{
	IOS	
//	freopen("1.in", "r", stdin);
//	cin >> t;
//	while(t --)	
	solve();
	return 0;
}

3

cpp 复制代码
#include <bits/stdc++.h> 
#define rep(i,a,b) for(register int i = (a); i <= (b); ++i)
#define fep(i,a,b) for(register int i = (a); i >= (b); --i)
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define ull unsigned long long
#define db double
#define endl '\n'
#define debug(a) cout<<#a<<"="<<a<<endl;
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define INF 0x3f3f3f3f 
#define x first
#define y second
using namespace std;

const int N = 110;
int t, n;
int a[N], f[N];

void solve()
{
	cin >> n;
	rep(i,1,n)	cin >> a[i];
	rep(i,1,n)
	{
		f[i] = 1;
		rep(j,1,i-1)
			if(a[j] <= a[i])	f[i] = max(f[i], f[j] + 1);
	}	
	int ans = 0;
	rep(i,1,n)	ans = max(ans, f[i]);
	cout << ans << endl;
}

int main()
{
	IOS	
//	freopen("1.in", "r", stdin);
//	cin >> t;
//	while(t --)	
	solve();
	return 0;
}

4

cpp 复制代码
#include <bits/stdc++.h> 
#define rep(i,a,b) for(register int i = (a); i <= (b); ++i)
#define fep(i,a,b) for(register int i = (a); i >= (b); --i)
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define ull unsigned long long
#define db double
#define endl '\n'
#define debug(a) cout<<#a<<"="<<a<<endl;
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define INF 0x3f3f3f3f

using namespace std;
const int N = 110;
int t, n;
int a[N], s[N], f[N];

void solve()
{
	cin >> n;
	rep(i,1,n)	 cin >> a[i], s[i] = s[i-1] + a[i];
	int minn = INF;
	rep(i,1,n) 
	{
		f[i] = min(s[i], minn);
		minn = min(minn, f[i]);
	}
	int ans = 0;
	rep(i,1,n)	ans = max(ans, s[i] - f[i]);
	cout << max(0, ans) << endl;
}

int main()
{
	IOS	
//	freopen("1.in", "r", stdin);
//	cin >> t;
//	while(t --)	
	solve();
	return 0;
}

5

cpp 复制代码
#include <bits/stdc++.h> 
#define rep(i,a,b) for(register int i = (a); i <= (b); ++i)
#define fep(i,a,b) for(register int i = (a); i >= (b); --i)
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define ull unsigned long long
#define db double
#define endl '\n'
#define debug(a) cout<<#a<<"="<<a<<endl;
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define INF 0x3f3f3f3f

using namespace std;
const int N = 110;
int t, n, m;
int a[N][N], s[N][N];

void solve()
{
	cin >> n >> m;
	rep(i,1,n)	rep(j,1,m) 	cin >> a[i][j];
	rep(i,1,n)	rep(j,1,m)	s[i][j] = s[i-1][j] + s[i][j-1] - s[i-1][j-1] + a[i][j];
	int ans = 0, x1, y1, x2, y2;
	rep(i,1,n)	rep(j,1,m)	rep(p,1,i)	rep(q,1,j)
	{
		int t = s[i][j] - s[i][q-1] - s[p-1][j] + s[p-1][q-1];
		if(t > ans)
		{
			ans = t;
			x1 = p; y1 = q;
			x2 = i; y2 = j;
		}
	}
	cout << ans << endl;
	cout << x1 << ' ' << x2 << ' ' << y1 << ' ' << y2 << endl;
}

int main()
{
	IOS	
//	freopen("1.in", "r", stdin);
//	cin >> t;
//	while(t --)	
	solve();
	return 0;
}
相关推荐
春日见13 小时前
vscode代码无法跳转
大数据·人工智能·深度学习·elasticsearch·搜索引擎
爱吃rabbit的mq13 小时前
第09章:随机森林:集成学习的威力
算法·随机森林·集成学习
精彩极了吧13 小时前
C语言基本语法-自定义类型:结构体&联合体&枚举
c语言·开发语言·枚举·结构体·内存对齐·位段·联合
Drgfd13 小时前
真智能 vs 伪智能:天选 WE H7 Lite 用 AI 人脸识别 + 呼吸灯带,重新定义智能化充电桩
人工智能·智能充电桩·家用充电桩·充电桩推荐
萤丰信息14 小时前
AI 筑基・生态共荣:智慧园区的价值重构与未来新途
大数据·运维·人工智能·科技·智慧城市·智慧园区
(❁´◡`❁)Jimmy(❁´◡`❁)14 小时前
Exgcd 学习笔记
笔记·学习·算法
盖雅工场14 小时前
排班+成本双管控,餐饮零售精细化运营破局
人工智能·零售餐饮·ai智能排班
神策数据14 小时前
打造 AI Growth Team: 以 Data + AI 重塑品牌零售增长范式
人工智能·零售
2501_9413331014 小时前
数字识别与检测_YOLOv3_C3k2改进模型解析
人工智能·yolo·目标跟踪
逐梦苍穹14 小时前
速通DeepSeek论文mHC:给大模型装上物理阀门的架构革命
人工智能·deepseek·mhc