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

做进行网站推广赚钱百度seo公司电话

做进行网站推广赚钱,百度seo公司电话,法院门户网站建设,开发公司都有什么部门C日常刷题积累 今日刷题汇总 - day0211、爱丽丝的人偶1.1、题目1.2、思路1.3、程序实现 2、集合2.1、题目2.2、思路2.3、程序实现 -- set 3、最长回文子序列3.1、题目3.2、思路3.3、程序实现 -- dp 4、题目链接 今日刷题汇总 - day021 1、爱丽丝的人偶 1.1、题目 1.2、思路 …

C++日常刷题积累

  • 今日刷题汇总 - day021
    • 1、爱丽丝的人偶
      • 1.1、题目
      • 1.2、思路
      • 1.3、程序实现
    • 2、集合
      • 2.1、题目
      • 2.2、思路
      • 2.3、程序实现 -- set
    • 3、最长回文子序列
      • 3.1、题目
      • 3.2、思路
      • 3.3、程序实现 -- dp
    • 4、题目链接

今日刷题汇总 - day021

1、爱丽丝的人偶

1.1、题目

在这里插入图片描述

1.2、思路

读完题,知道让我们将一个有序的身高序列重新排队,要求除了第一个和最后一个元素外,不能让x的前、后元素一个比它高,一个比它矮,求怎么摆能够满足上述条件并摆放所有玩偶。那么,分析题目和示例,得知,不能让x的前后具有相异性,那么要么全部比x大,要么全部比x小即可。既然如此,我第一个摆放最小的1,第二个摆放最大的n,再接着拜访次小的2,再接着摆放次大的n-1即可。发现这个规律后,就按照这个逻辑实现即可。接下来,就是程序实现。

1.3、程序实现

根据题目和思路分析,由于是有序序列,那么直接按照先放置小的,再放大的顺序循环即可。

#include <iostream>using namespace std;int main()
{int n;cin >> n;int left = 1;int right = n;while(left <= right){cout << left << " ";left++;if(left <= right){cout << right << " ";right--;}}return 0;
}

在这里插入图片描述

在这里插入图片描述

2、集合

2.1、题目

在这里插入图片描述

2.2、思路

读完题,知道要求实现两个集合的相加,其中相加之后的集合中不能出现相同元素。首先,能够想到得基本思想就是归并排序,先把A,B集合sort排序,然后进行归并排序,最后去重输出。那么既然如此,简化思路就是将A,B集合需要放入同一个容器中,然后排序+去重即可。恰好得是C++提供了一个set关联式容器,set作为一个容器也是用来存储同一数据类型的数据类型,并且能从一个数据集合中取出数据,在set中每个元素的值都唯一,而且系统能根据元素的值自动进行排序。需要注意的是set中元素的值不能直接被改变。

底层本质:C++ STL中标准关联容器set, multiset, map, multimap内部采用的就是一种非常高效的平衡检索二叉树:红黑树,也成为RB树(Red-Black Tree)。RB树的统计性能要好于一般平衡二叉树,所以被STL选择作为了关联容器的内部结构。

所以对于这道题,使用set可以完美解决问题。

2.3、程序实现 – set

首先,按照要求和思路分析,引入#include 头文件,然后采用预处理方式按照题目输入和插入到同一个容器s中,自动完成排序与去重,最后直接遍历输出即可。

#include <iostream>
#include <set>
using namespace std;int main()
{int n,m;cin >> n >> m;set<int> s;int A,B;for(int i = 0;i < n;i++){cin >> A;s.insert(A);}for(int i = 0;i < m;i++){cin >> B;s.insert(B);}for(auto num : s){cout << num << " ";}return 0;
}

在这里插入图片描述
在这里插入图片描述

3、最长回文子序列

3.1、题目

在这里插入图片描述

3.2、思路

读完题,知道跟之前做过的题连续子数组最大和类似,都不是固定长度的,可以是任意长度的可能,所以不采用滑动窗口而采用dp动态规划。求一个字符串中最长的回文子序列,其中,本题中子序列字符串任意位置删除k(len(s)>=k>=0)个字符后留下的子串。那么子序列是不定长的情况,所以动态规划法需要状态表示,以dp[i][j]表示,在第 [ i , j ] 区间的回文字符串最大长度,推导状态转移方程,当回文字符串长度为一个字符时,则 i 等于 j ,直接输出1即可,然后要求最大回文串,那么当字符串本身就是回文时就是最大长度,另外本身不是字符串的情况下,就又分为左边去掉一个字符组成的区间dp[i+1][j],右边去掉一个字符组成的区间dp[i][j-1]为次打区间,如果满足回文时就是最大回文。所以状态转移方程情况分为:
a、当i = j 的时候,只有⼀个字符,⻓度为1;
b、当i < j 的时候,分情况讨论:
(1)、str[i] == str[j]时:dp[i][j] = dp[i + 1][j - 1] + 2;
(2)、str[i] != str[j]时:dp[i][j] = max(dp[i + 1][j], dp[i][j - 1]);
另外注意初始化为了处理长度为1时的情况,所以置dp[i][i] = 1;表示每个单独的字符都是长度为1的回文子序列 和 返回值,长度为n的字符串满足[0,n)区间,所以输出是dp[0][n-1]即可。那么接下来就是,程序实现。

3.3、程序实现 – dp

首先根据思路分析得出即可

  1. 状态表⽰: dp[i][j] 表⽰:字符串[i, j] 范围内的最⻓回⽂⼦序列的⻓度;
  2. 状态转移⽅程:
    a、当i = j 的时候,只有⼀个字符,⻓度为1;
    b、当i < j 的时候,分情况讨论:
    c、s[i] == s[j]:dp[i][j] = dp[i + 1][j - 1] + 2;
    d、s[i] != s[j]:dp[i][j] = max(dp[i + 1][j], dp[i][j - 1]);
  3. 初始化: dp[i][i] = 1 。
  4. 返回值: dp[0][n - 1] 。
#include <iostream>
#include <string>
using namespace std;int dp[1001][1001];int main()
{string str;cin >> str;int n = str.size();for(int i = n-1;i >= 0;i--){dp[i][i] = 1;for(int j = i + 1;j < n;j++){if(str[i] == str[j])dp[i][j] = dp[i+1][j-1] + 2;elsedp[i][j] = max(dp[i+1][j],dp[i][j-1]);}}cout << dp[0][n-1] << endl;return 0;
}

在这里插入图片描述
在这里插入图片描述

4、题目链接

🌟爱丽丝的人偶
🌟集合
🌟最长回文子序列

http://www.tj-hxxt.cn/news/8133.html

相关文章:

  • 火车头采集做网站赚钱网站优化推广软件
  • 建设营销型网站的步骤谷歌推广一年多少钱
  • 茂名网站优化网站被百度收录
  • 网络广告的缺点优化大师在哪里
  • 网站做一样的算侵权么沈阳seo推广
  • 科协建设网站 方案站长收录平台
  • 旅游电子商务网站开发实验报告宁波seo教程网
  • 建设公司网站 优帮云2023百度秒收录技术
  • 电子商务网站建设的基本流程sem是什么意思的缩写
  • 怎么查看网站是哪家公司做的湖北网络推广seo
  • 台州做网站app的公司1元涨1000粉
  • 自己做的网站 网站备案流程网络推广靠谱吗
  • 网站的素材做logoseo专员是什么意思
  • 如何在自己电脑上搭建网站搜索引擎营销分类
  • 保定有那些网站开鲁seo服务
  • 蓝色网站特点厦门网站流量优化价格
  • 哪个网站做清洁的活多谷歌商店下载不了软件
  • 网站地图怎么做一键导航线上如何做推广
  • 做网站宁夏大地seo
  • 辽宁省建设工程信息网电话平原县网站seo优化排名
  • 网站开发公司企业今日最新闻
  • 图片模板在线设计制作站外seo推广
  • 做实验教学视频的网站百度提交网站入口
  • 武汉平台网站建设 APP营销策划公司 品牌策划公司
  • jsp做网站 案例正规手游代理平台有哪些
  • 建设银行甘肃分行网站2023年重大时政热点
  • 合肥企业网站常用的网络营销工具
  • 做空闲时间的网站郑州seo学校
  • 网站开发中的视图页面指的是什么中国网评中国网评
  • 外贸企业网站源码关键词推广seo