专题三1003
来源:互联网 发布:ios微信多开软件 编辑:程序博客网 时间:2024/06/14 10:41
*题意
给定n个正整数标记的棋子,求这些棋子的上升子序列中标记和最大为多少
*解题思路
就是求上升子序列,然后将其中和最大的输出,用sun[i]记录每个棋子num[i]与其前面的棋子组成的上升子序列的和,通过判断后面的棋子num[i]是否大于前面的棋子num[j];大于则sum[i]+=num[j];用ans记录最大的sum[i];最后输出sum[i]即可
*感想
题目很长,但是大多数都是废话
*源码
#include <iostream>
using namespace std;
const int maxn=1002;
int num[maxn];
int sum[maxn];
int n;
int main()
{
while(scanf("%d",&n)!=EOF&&n)
{
for(int i=1;i<=n;i++)
cin>>num[i];
sum[1]=num[1];
int ans=sum[1];
for(int i=2;i<=n;i++)
{
sum[i]=num[i];
for(int j=1;j<i;j++)
{
if(num[j]<num[i]&&(sum[j]+num[i]>sum[i]))
sum[i]=sum[j]+num[i];
}
if(ans<sum[i])
ans=sum[i];
}
cout<<ans<<endl;
}
return 0;
}
Problem C
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 116 Accepted Submission(s) : 52
3 1 3 24 1 2 3 44 3 3 2 10
4103
- 1003-C专题三
- 专题三1003
- 2016sdau课程练习专题三 1003
- 3G专题三
- LDAP专题(三)
- IPV6专题(三)
- 专题三1006
- 专题三1001
- 专题三 第一题
- 专题三 第二题
- 专题三 第三题
- 专题三 第四题
- 专题三1012
- 专题三1013
- 1006-F专题三
- 1001-A专题三
- 1010-J专题三
- 专题三 第五题
- hdu1059 Dividing
- SSH学习笔记
- 二叉树相关笔试题(三)
- JVM内存管理和垃圾回收
- 封装ajax——前端工程师和派孔明
- 专题三1003
- 《Zero to One》读书笔记
- ACM第三次练习—1017
- Sicily1823——Hardest Job Ever!
- hadoop2.6.0版本集群环境搭建
- Problem U
- centos6.5卸载自带mysql
- c++关于带指针类的学习笔记(第二周)
- LeetCode:Intersection of Two Arrays II