162:Post Office

解题思路

#include<bits/stdc++.h>
using namespace std;
int n,m,a[],f[][],mi[][],i,j;
int main()
{
cin>>n>>m;
for(i=;i<=n;i++)cin>>a[i];
for(i=;i<=n;i++)
for(j=;j<=m;j++)
f[i][j]=;//赋为最大值
for(i=;i<=n;i++)
{
for(j=i+;j<=n;j++) mi[i][j]=mi[i][j-]+a[j]-a[(i+j)/];//从第i个村庄到第j个村庄中只建一个邮局的总路径长度
f[i][]=mi[][i];//转移到f
}
for(i=;i<=n;i++)
for(j=;j<=m;j++)
for(int k=j-;k<i;k++)
f[i][j]=min(f[i][j],f[k][j-]+mi[k+][i]);
cout<<f[n][m]<<endl;
return ;
}

1759:最长上升子序列

#include<iostream>
#include<cstring>
using namespace std;
const int N = ;
int a[N],f[N]; int main()
{
int n;
cin>>n;
for(int i=;i<n;i++)cin>>a[i];
for(int i=;i<n;i++)f[i]=;
for(int i=;i<n;i++)
{
for(int j=;j<i;j++)
{
if(a[j]<a[i])f[i]=max(f[i],f[j]+);
}
}
int ans = ;
for(int i=;i<n;i++)ans = max(ans,f[i]);
cout<<ans<<endl;
return ;
}

1768:最大子矩阵

讲解链接

2000:最长公共子上升序列

讲解链接:原理解释 题目解答

/*
1. 这题不支持Special Judge...so设置状态转移方程的时候 要设置成LCIS是以第一个数组的第j个元素结尾的 而不能是第二个数组 - - 就是这么坑0-0
2. 记录LCIS中的元素并输出 dp的时候对结构体dp 结构体中vector记录LCIS中元素。
*/
#include<iostream>
#include<vector>
using namespace std; struct Node
{
int val = ;
vector<int>v;
}; int main() {
int a[], b[];
Node dp[];
int m, n;
cin >> m;
for (int i = ; i <= m; i++)
cin >> a[i];
cin >> n;
for (int i = ; i <= n; i++)
cin >> b[i];
for (int i = ; i <= n; i++)
{
Node Max;
for (int j = ; j <= m; j++) {
if (b[i] > a[j] && dp[j].val > Max.val)
Max = dp[j];
if (b[i] == a[j]) {
dp[j].val = Max.val + ;
dp[j].v = Max.v;
dp[j].v.push_back(b[i]);
}
}
}
Node Max = dp[];
for (int i = ; i <= m; i++) {
if (dp[i].val > Max.val)
Max = dp[i];
}
cout << Max.val << endl;
for (int i = ; i < Max.v.size(); i++)
cout << Max.v[i] << " ";
cout << endl;
return ;
}

2985:数字组合

讲解链接

#include<iostream>
#include<cstring>
using namespace std; int main()
{
int n,t;
int f[],a[];
cin>>n>>t;
for(int i=;i<=n;i++)cin>>a[i];
f[]=;
for(int i=;i<=n;i++)
for(int j=t;j>=a[i];j--)
f[j]+=f[j-a[i]];
cout<<f[t]<<endl;
return ;
}

最新文章

  1. makefile 笔记
  2. Sql:多行合并一行以及多条数据取时间最早的那条
  3. javascript优化--14模式2(DOM和浏览器模式)
  4. 李洪强-C语言3-数组
  5. python爬虫框架scrapy实例详解
  6. 李洪强iOS开发之苹果使用预览截图
  7. 使用POI把Word Excel转为HTML
  8. 依赖注入及AOP简述(九)——单例和无状态Scope .
  9. 基本属性 - iOS中的本地通知
  10. ZigBee研究之旅(一)
  11. js中的IP格式正则匹配校验详解~
  12. c# 函数简述
  13. Hibernate第一篇【介绍Hibernate,简述ORM,快速入门】
  14. 201621123060《JAVA程序设计》第八周学习总结
  15. Linux命令行报错 bash: cannot create temp file for here-document: No space left on device
  16. Electron学习(一)——— electron的安装
  17. Linux命令之top
  18. InvalidArgumentError (see above for traceback): Assign requires shapes of both tensors to match. lhs shape= [2048,38] rhs shape= [2048,2]
  19. canvas动画---- 太阳、地球、月球
  20. spring aop的配置

热门文章

  1. Markdown温故知新(4):更多扩展语法及HTML
  2. Servlet处理(jQuery)Ajax请求
  3. php 读取excel 时间列
  4. Object.freeze
  5. 开源一些C#不常用知识(附上DEMO)
  6. windows环境下基于nginx搭建rtmp服务器
  7. InvalidOperationException: Operations that change non-concurrent collections must have exclusive access. A concurrent update was performed on this collection and corrupted its state. The collection&#39;s
  8. VSCode在Ubuntu下快捷键和Windows下不一致的解决办法
  9. np.append()
  10. Codeforces Round #605 (Div. 3)