C/C++每日一练(20230307)

目录
1. 国名排序 ★★
2. 重复的DNA序列 ★★★
3. 买卖股票的最佳时机 III ★★★
🌟 每日一练刷题专栏
C/C++ 每日一练 专栏
Python 每日一练 专栏
1. 国名排序
小李在准备明天的广交会,明天有来自世界各国的客房跟他们谈生意,小李要尽快的整理出名单给经理,你能帮他把客户来自的国家按英文字典次序排好吗?
例如小李手上有来自加拿大,美国,中国的名单,排好的名单应是美国,加拿大,中国
输入
第一行为一个n(n<=100)表示n个国家,第2行到第n+1行分别为n个国家的名字.
输出
输出共计n行,为n个国家按字典顺序的排列,每行为一个国家
输入样例:
3
China
Canada
America
输出样例:
America
Canada
China
代码:
#include <iostream>
#include <string>
using namespace std;
string a[1000];
int main()
{int i, n;cin >> n;for (i = 1; i <= n; i++){cin >> a[i];}for (i = 1; i <= n; i++){for (int j = i + 1; j <= n; j++){if (a[i] > a[j])swap(a[i], a[j]);}}for (int i = 1; i <= n; i++)cout << a[i] << endl;return 0;
}
输入输出:
3
China
Canada
America
America
Canada
China
2. 重复的DNA序列
所有 DNA 都由一系列缩写为 'A','C','G' 和 'T' 的核苷酸组成,例如:"ACGAATTCCG"。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。
编写一个函数来找出所有目标子串,目标子串的长度为 10,且在 DNA 字符串 s 中出现次数超过一次。
示例 1:
输入:s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT" 输出:["AAAAACCCCC","CCCCCAAAAA"]
示例 2:
输入:s = "AAAAAAAAAAAAA" 输出:["AAAAAAAAAA"]
提示:
0 <= s.length <= 10^5s[i]为'A'、'C'、'G'或'T'
代码:
#include <bits/stdc++.h>
using namespace std;class Solution
{
public:vector<string> findRepeatedDnaSequences(string s){std::map<std::string, int> word_map;std::vector<std::string> result;for (int i = 0; i < s.length(); i++){std::string word = s.substr(i, 10);if (word_map.find(word) != word_map.end()){word_map[word] += 1;}else{word_map[word] = 1;}}std::map<std::string, int>::iterator it;for (it = word_map.begin(); it != word_map.end(); it++){if (it->second > 1){result.push_back(it->first);}}return result;}
};int main()
{Solution sol;string s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT";for (auto str: sol.findRepeatedDnaSequences(s))cout << str << " ";cout << endl;return 0;
}
输出:
AAAAACCCCC CCCCCAAAAA
3. 买卖股票的最佳时机 III
给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。
设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。
注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
示例 1:
输入:prices = [3,3,5,0,0,3,1,4] 输出:6 解释:在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3-0 = 3 。 随后,在第 7 天(股票价格 = 1)的时候买入,在第 8 天 (股票价格 = 4)的时候卖出,这笔交易所能获得利润 = 4-1 = 3 。
示例 2:
输入:prices = [1,2,3,4,5] 输出:4 解释:在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 注意你不能在第 1 天和第 2 天接连购买股票,之后再将它们卖出。 因为这样属于同时参与了多笔交易,你必须在再次购买前出售掉之前的股票。
示例 3:
输入:prices = [7,6,4,3,1] 输出:0 解释:在这个情况下, 没有交易完成, 所以最大利润为 0。
示例 4:
输入:prices = [1] 输出:0
提示:
1 <= prices.length <= 10^50 <= prices[i] <= 10^5
代码:
#include <bits/stdc++.h>
using namespace std;class Solution
{
public:int maxProfit(vector<int> &prices){int length = prices.size();if (length < 2){return 0;}vector<int> former(length, 0);vector<int> later(length, 0);int curMin = prices[0];int curProfit = 0;for (int i = 1; i < length; i++){curProfit = max(curProfit, prices[i] - curMin);curMin = min(curMin, prices[i]);former[i] = curProfit;}int curMax = prices[length - 1];curProfit = 0;for (int i = length - 2; i >= 0; i--){curProfit = max(curProfit, curMax - prices[i]);curMax = max(curMax, prices[i]);later[i] = curProfit;}int maxProfit = 0;for (int i = 0; i < length; i++)maxProfit = max(maxProfit, former[i] + later[i]);return maxProfit;}
};int main()
{Solution s;vector<int> prices = {3,3,5,0,0,3,1,4};cout << s.maxProfit(prices) << endl;prices = {1,2,3,4,5};cout << s.maxProfit(prices) << endl;prices = {7,6,4,3,1};cout << s.maxProfit(prices) << endl;return 0;
}
输出:
6
4
0
🌟 每日一练刷题专栏
✨ 持续,努力奋斗做强刷题搬运工!
👍 点赞,你的认可是我坚持的动力!
★ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!
![]() | C/C++ 每日一练 专栏 |
![]() | Python 每日一练 专栏 |
相关文章:
C/C++每日一练(20230307)
目录 1. 国名排序 ★★ 2. 重复的DNA序列 ★★★ 3. 买卖股票的最佳时机 III ★★★ 🌟 每日一练刷题专栏 C/C 每日一练 专栏 Python 每日一练 专栏 1. 国名排序 小李在准备明天的广交会,明天有来自世界各国的客房跟他们谈生意,…...
一条SQL查询语句是如何执行的?
平时我们使用数据库,看到的通常都是一个整体。比如,你有个最简单的表,表里只有一个ID字段,在执行下面这个查询语句时: mysql> select * from T where ID10; 我们看到的只是输入一条语句,返…...
tcsh常用配置
查看当前的shell类型 在 Linux 的世界中,有着许多 shell 程序。常见的有: Bourne shell (sh) C shell (csh) TC shell (tcsh) Korn shell (ksh) Bourne Again shell (bash) 其中,最常用的就是bash和tcsh,本次文章介绍tcsh的…...
YOLOv5源码逐行超详细注释与解读(2)——推理部分detect.py
前言 前面简单介绍了YOLOv5的项目目录结构(直通车:YOLOv5源码逐行超详细注释与解读(1)——项目目录结构解析),对项目整体有了大致了解。 今天要学习的是detect.py。通常这个文件是用来预测一张图片或者一…...
什么叫个非对称加密?中间人攻击?数字签名?
非对称加密也称为公钥密码。就是用公钥来进行加密,撒子意思? 非对称加密 在对称加密中,我们只需要一个密钥,通信双方同时持有。而非对称加密需要4个密钥,来完成完整的双方通信。通信双方各自准备一对公钥和私钥。其中…...
2023.03.07 小记与展望
碎碎念系列全新改版! 以后就叫小记和展望系列 最近事情比较多,写篇博客梳理一下自己3月到5月下旬的一个规划 一、关于毕设 毕设马上开题答辩了,准备再重新修改一下开题报告,梳理各阶段目标。 毕设是在去年的大学生创新训练项目…...
MyBatis源码分析(七)MyBatis与Spring的整合原理与源码分析
文章目录写在前面一、SqlSessionFactoryBean配置SqlSessionFactory1、初识SqlSessionFactoryBean2、实现ApplicationListener3、实现InitializingBean接口4、实现FactoryBean接口5、构建SqlSessionFactory二、SqlSessionTemplate1、初始SqlSessionTemplate2、SqlSessionTemplat…...
基于声网 Flutter SDK 实现多人视频通话
前言 本文是由声网社区的开发者“小猿”撰写的Flutter基础教程系列中的第一篇。本文除了讲述实现多人视频通话的过程,还有一些 Flutter 开发方面的知识点。该系列将基于声网 Fluttter SDK 实现视频通话、互动直播,并尝试虚拟背景等更多功能的实现。 如果…...
IT服务管理(ITSM) 中的大数据
当我们谈论IT服务管理(ITSM)领域的大数据时,我们谈论的是关于两件不同的事情: IT 为业务提供的大数据工具/服务 - 对业务运营数据进行数字处理。IT 运营中的大数据 – 处理和利用复杂的 IT 运营数据。 面向业务运营的大数据服务…...
Validator校验之ValidatorUtils
注意:hibernate-validator 与 持久层框架 hibernate 没有什么关系,hibernate-validator 是 hibernate 组织下的一个开源项目 。 hibernate-validator 是 JSR 380(Bean Validation 2.0)、JSR 303(Bean Validation 1.0&…...
C++---背包模型---采药(每日一道算法2023.3.7)
注意事项: 本题是"动态规划—01背包"的扩展题,dp和优化思路不多赘述。 题目: 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。 为此,他想拜附近最有威望的医师为师。 医师为了判断他的资质&…...
Java各种锁
目录 一、读写锁(ReentrantReadWriteLock) 二、非公平锁(synchronized/ReentrantLock) 三、可重入锁/递归锁(synchronized/ReentrantLock) 四、自旋锁(spinlock) 五、乐观锁/悲观锁 六、死锁 1、死锁代码 2、死锁的检测(jps -l 与 jstack 进程号) 七、sychronized-wait…...
TryHackMe-Tardigrade(应急响应)
Tardigrade 您能否在此 Linux 端点中找到所有基本的持久性机制? 服务器已遭到入侵,安全团队已决定隔离计算机,直到对其进行彻底清理。事件响应团队的初步检查显示,有五个不同的后门。你的工作是在发出信号以使服务器恢复生产之前…...
导出GIS | 将EXCEL表格中坐标导出成GIS格式文件
一 前言 EXCEL是我们日常工作学习数据处理的办公软件,操作易上手,几乎人人都会用。EXCEL表格能够处理各种数据,包括经纬度坐标数据,地址数据等等。 有时因工作需要需将表格中地址数据处理为GIS格式的文件,以便能够将数…...
new set数组对象去重失败
我们知道Set是JS的一个种新的数据结构,和数组类似,和数组不同的是它可以去重,比如存入两个1或两个"123",只有1条数据会存入成功,但有个特殊情况,如果添加到set的值是引用类型,比如数组…...
Acwing: 一道关于线段树的好题(有助于全面理解线段树)
题目链接🔗:2643. 序列操作 - AcWing题库 前驱知识:需要理解线段树的结构和程序基本框架、以及懒标记的操作。 题目描述 题目分析 对区间在线进行修改和查询,一般就是用线段树来解决,观察到题目一共有五个操作&…...
DD-1/40 10-40mA型【接地继电器】
系列型号: DD-1/40接地继电器 DD-1/50接地继电器 DD-1/60接地继电器 一、 用途及工作原理 DD-1型接地继电器为瞬时动作的过电流继电器,用作小电流接地电力系统高电压三相交流发电机和电动机的接地零序过电流保护。继电器线圈接零序电流互感器(电缆式、母…...
【女神节】简单使用C/C++和Python嵌套for循环生成一个小爱心
目录 前言实现分析代码实现代码如下效果如下优化效果代码如下效果如下总结尾叙前言 女神节马上到了,有女朋友的小伙伴是不是已经精心准好礼物了呢!对于已婚男士,是不是整愁今天又该送什么礼物呢!说真的,我也整愁着,有什么要推荐么,评论留言下! 实现分析 可以先在纸上或…...
Biome-BGC生态系统模型与Python融合技术实践应用
查看原文>>> Biome-BGC生态系统模型与Python融合技术实践应用 Biome-BGC是利用站点描述数据、气象数据和植被生理生态参数,模拟日尺度碳、水和氮通量的有效模型,其研究的空间尺度可以从点尺度扩展到陆地生态系统。 在Biome-BGC模型中…...
ESP32 GPIO使用
ESP32 GPIO使用 #define GPIO_OUT_PIN 2 //定义引脚号 #define GPIO_OUTPUT_PIN_SEL (1<<GPIO_OUT_PIN) //定义输出引脚的宏,用来将输出引脚号转换为位掩码void bsp_gpio_init(){gpio_config_t io_conf;io_conf.pin_bit_mask GPIO_OUTPUT_PIN_SE…...
通义千问3-Reranker-0.6B模型架构深度解析
通义千问3-Reranker-0.6B模型架构深度解析 1. 引言 在当今AI技术飞速发展的时代,文本重排序模型作为信息检索和RAG系统的核心组件,正发挥着越来越重要的作用。通义千问3-Reranker-0.6B作为一款轻量级但性能卓越的重排序模型,以其精巧的架构…...
PLECS 4.7模拟下的特斯拉Model 3电驱系统三步搭建与性能分析:从双闭环Boost电...
基于PLECS4.7的特斯拉Model3电驱仿真及报告 电驱系统仿真搭建过程,由三步构成,分别为:双闭环Boost电路搭建、三相逆变电路搭建,电机控制电路搭建。 双闭环Boost电路输入电压370V,输出电压为500V,实现50kW输…...
nli-distilroberta-base一键部署:docker run -p 5000:5000指令直达可用服务
NLI DistilRoBERTa Base - 一键部署与使用指南 1. 项目概述 nli-distilroberta-base是一个基于DistilRoBERTa模型的自然语言推理(NLI)Web服务。这个轻量级但强大的工具能够分析两个句子之间的关系,为文本理解任务提供智能判断能力。 核心功能是判断"前提&qu…...
解锁论文写作新范式:Paperzz AI 全流程赋能,让本科毕设从 “启动” 到 “成稿” 高效落地
Paperzz-AI官网免费论文查重复率AIGC检测/开题报告/文献综述/论文初稿paperzz - 毕业论文-AIGC论文检测-AI智能降重-ai智能写作https://www.paperzz.cc/dissertation 当毕业季的钟声敲响,不少本科生正陷入论文写作的僵局:对着空白文档无从下笔、文献检索…...
网络工程师日记--企业内外网访问控制与网络架构搭建实践
前言企业网络搭建与运维中,合理的网络架构分层与精细化的访问控制策略是保障网络安全、提升业务可用性的核心。本文结合实际网络拓扑场景,从架构设计、需求分析、策略配置三个维度,讲解企业内网与外网的访问控制实现及网络架构搭建要点学习目…...
OpenClaw+GLM-4-7-Flash科研助手:自动整理文献与生成综述
OpenClawGLM-4-7-Flash科研助手:自动整理文献与生成综述 1. 为什么需要自动化科研助手 作为一名经常需要阅读大量文献的研究者,我发现自己花费在文献整理上的时间越来越多。每次打开文件夹看到几十篇PDF文献时,那种"从哪里开始"的…...
创意工作者利器:OpenClaw驱动Qwen3-32B批量生成营销文案
创意工作者利器:OpenClaw驱动Qwen3-32B批量生成营销文案 1. 为什么需要自动化文案生成 作为长期从事数字营销的自由职业者,我每天需要为不同客户产出大量营销文案。传统工作流程中,我需要反复查阅产品文档、手动调整关键词密度、为不同平台…...
计算机毕设 java 基于 Android 的 “课堂管理助手” 移动应用开发 SpringBoot 安卓智能课堂管理移动应用 JavaAndroid 师生互动与教学管理平台
计算机毕设 java 基于 Android 的 “课堂管理助手” 移动应用开发 07s039,末尾的数字和英文也要加上 (配套有源码 程序 mysql 数据库 论文)本套源码可以先看具体功能演示视频领取,文末有联 xi 可分享在教育信息化快速发展的背景下…...
ollama-QwQ-32B微调实践:优化OpenClaw技术文档理解能力
ollama-QwQ-32B微调实践:优化OpenClaw技术文档理解能力 1. 为什么需要微调大模型理解技术文档? 去年冬天,我在用OpenClaw自动化处理技术文档时遇到了一个尴尬场景:当我让AI助手"整理OpenClaw的403错误解决方案"时&…...
3大突破:让中医药AI技术走进基层医疗
3大突破:让中医药AI技术走进基层医疗 【免费下载链接】Awesome-Chinese-LLM 整理开源的中文大语言模型,以规模较小、可私有化部署、训练成本较低的模型为主,包括底座模型,垂直领域微调及应用,数据集与教程等。 项目地…...

