当前位置: 首页 > news >正文

网站备案去哪备案私域营销

网站备案去哪备案,私域营销,大图做网站背景加载慢,南宁网站建设 传导题目描述 思路分析 本题有两问,第一问直接用lis的模板即可,下面重点看第二问 思路是贪心: 贪心流程: 从前往后扫描每一个数,对于每个数: 情况一:如果现有的子序列的结尾都小于当前的数&…

题目描述

 思路分析

本题有两问,第一问直接用lis的模板即可,下面重点看第二问

思路是贪心:

贪心流程:

从前往后扫描每一个数,对于每个数:

情况一:如果现有的子序列的结尾都小于当前的数,则创建子序列

情况二:将当前的数放到结尾大于等于它的最小的子序列后面

举个例子:

360 322 555 222.....

从左到右遍历上面序列,当遍历到222的时候,此时已经存在了两个子序列“360 322”和“555”,两个子序列的结尾分别是322和555,其中322是大于等于222且是“322和555”中最小的数,所以把222放在序列“360 322”的后边!

贪心证明:

A表示贪心算法得到的序列个数,B表示最优解

B<=A   显然

如何证明B>=A?利用调整法:

如上图所示,假设a的后面是利用贪心算法插入的一个数,b的后面是最优解插入的一个数

在这两个序列后面补齐之后:

因为a是最优解的插法,所以b>=a

可以把x及后面的序列做交换,导致最优解变成了贪心解,并且总序列个数不变,所以B>=A

完整代码:

#include<iostream>
#include<string>
#include<sstream>
using namespace std;
const int N=1010;
int f[N],h[N],q[N];
int cnt,res;
int n;
int main()
{string str;getline(cin,str);stringstream ssin(str);while(ssin>>q[n])n++;for(int i=0;i<n;i++){f[i]=1;for(int j=0;j<i;j++)if(q[j]>=q[i])f[i]=max(f[j]+1,f[i]);res=max(res,f[i]);int k=0;while(k<cnt&&h[k]<q[i])k++;if(k<cnt)h[k]=q[i];elseh[cnt++]=q[i];}cout<<res<<endl<<cnt<<endl;return 0;
}

http://www.dt0577.cn/news/5005.html

相关文章:

  • 网站建设方案意见市场营销经典案例
  • 学院网站建设需求说明书友情链接交易网站源码
  • wap手机网站静态模板开一个网站需要多少钱
  • 手机网站开发软件下载品牌定位
  • 个人怎么自己建网站郑州seo培训班
  • 网站开发建设价格人工在线客服
  • 源码下载工具北京云无限优化
  • 做网站之前需要准备什么深圳搜索优化排名
  • 网站的分析与设计百度关键词检测工具
  • 庐江网站制作公司青岛专业网站制作
  • wordpress建站 ftp网络营销都有哪些方法
  • 网站建站套餐seo搜索引擎优化介绍
  • 中国最大的摄影网站2021年重大新闻事件
  • 做电商网站公司如何在国外推广自己的网站
  • 最新新闻热点事件素材2022seo入门教程网盘
  • 北京海淀区网站开发福州网站seo优化公司
  • 网站上的动态图怎么做电子商务网站建设与管理
  • 营销型网站架构师微信小程序怎么制作自己的程序
  • 安徽股票配资网站建设口碑营销的产品有哪些
  • iis7 发布静态网站2022年新闻大事
  • 专业的家居行业网站模板郑州厉害的seo顾问
  • 深圳航空公司官方网站招聘市场营销实务
  • 公司网站谁负责做黄冈网站推广软件视频下载
  • 网页设计与网站建设报告书写一篇软文1000字
  • 外贸网站模板 外贸网站制作网络推广培训班哪家好
  • 四川seo整站优化吧互联网广告
  • 服务器可以放几个网站百度关键词优化排名
  • wordpress导航兰天津seo方案
  • 金融行业网站建设方案域名比价网
  • 光谷企业网站建设html网页制作成品