C++笔试练习笔记 【2】: 数字统计 BC153 两个数组的交集 NC313 点击消除 AB5

文章目录

  • 数字统计
    • 分析题目
    • 代码部分
  • 两个数组的交集
    • 题目分析
    • 代码部分
  • 点击消除
    • 题目解析
    • 代码部分

数字统计

在这里插入图片描述

分析题目

这个题涉及到两个知识点,就是枚举和数字的拆分
那么我的思路是进行遍历,拆分数字判断二的个数,枚举进行计数
那么数字的拆分就是通过%和/进行的
在这里插入图片描述

代码部分

#include <iostream>
using namespace std;int main() {int a=0,b=0,mark=0;cin >> a >> b;for(int i=a;i<=b;i++){int n=i;while(n){if(n%10==2) mark++;n=n/10;}}cout << mark << endl;
}

两个数组的交集

在这里插入图片描述

题目分析

刚看到这个题想到用哈希表解决,但是这个题的数据不大所以如果我们用容器来解决耗时所以我想到了用数组模拟一个哈希表就能快速解决
这个题还有一个点就是例如

[1 ,2 ,2 ,2 ,2 ] 和 [ 8 ,2 ,2 ,2 ,6]

我们的返回值应该是 [ 2 ] 而不是 [ 2 ,2 ,2 ]
所以这也是我们用数组来模拟哈希表的优势,我们在每次成功判断一个数是公共的之后便把这个数从哈希表中删除,就不怕重复的问题了

代码部分

#include <algorithm>
class Solution {bool hash[1001]={0};//开一个bool型数组来模拟哈希表
public:  vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {vector <int> an;//记录答案for(auto a:nums1){hash[a] = true;}for(auto a:nums2){if(hash[a]){an.push_back(a);hash[a]=false;//每次发现公公数记录后从哈希中删除}}return an;}
};

点击消除

在这里插入图片描述

题目解析

这道题我想到的是用栈进行解决
以示例1为例:
首先就是创建栈,之后a进栈,之后判断下一个是否与a相同相同消除不同进栈如图:
在这里插入图片描述
当下一个与栈顶相同时进行消除只需把栈顶元素pop即可如图:
在这里插入图片描述
虽然用栈来实现是完全没有问题的,但是在最后输出时由于栈的特性所以数据是反的会有点麻烦,所以我用string来模拟栈来实现功能,并且输出的时候直接输出即可

代码部分

#include <iostream>
using namespace std;
#include <string>int main() {string str;cin>>str;string an;for(int i=0; i < str.size(); i++){if(an.back()==str[i])//要是匹配【栈顶元素等于下一个要入栈的元素】即消除【出栈】{an.pop_back();}else {an.push_back(str[i]);//正常就入栈}}if(an.size()!=0)//判断最后剩余的是否为空
{cout << an;//不为空输出消除后的结果
}
else {cout << 0 <<endl;//空输出0,题目规定
}return 0;}
// 64 位输出请用 printf("%lld")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1409887.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

如何通过前后端交互的方式制作Excel报表

前言 Excel拥有在办公领域最广泛的受众群体&#xff0c;以其强大的数据处理和可视化功能&#xff0c;成了无可替代的工具。它不仅可以呈现数据清晰明了&#xff0c;还能进行数据分析、图表制作和数据透视等操作&#xff0c;为用户提供了全面的数据展示和分析能力。 今天小编就…

labview中TDMS读写波形图

TDMS与二进制读写速度区别不大&#xff0c;但是它具备关系型数据库的一些优点&#xff0c;经常用于存取波形数据。

操作系统的运行机制详解

操作系统的 运行机制 #mermaid-svg-jVBbLUJa6gITOo7L {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-jVBbLUJa6gITOo7L .error-icon{fill:#552222;}#mermaid-svg-jVBbLUJa6gITOo7L .error-text{fill:#552222;stroke…

Spring实战项目【从0到1】:博客系统(上)

目录 1. 项目介绍2. 项目准备2.1 数据库准备2.2 创建项目2.3 配置文件2.4 准备前端页面2.5 测试 3. 项目公共模块3.1 实体类3.2 公共层 4. 业务代码4.1 持久层代码4.2 实现博客列表4.3 实现博客详情 1. 项目介绍 使用SSM框架&#xff08;Spring、Spring MVC、MyBatis框架)实现…

电脑技巧:轻松查看笔记本电脑电池的使用情况

目录 方法一&#xff1a;手工执行cmd命令 方法二&#xff1a;直接封装为Bat脚本 电池损耗程度介绍 Battery report字段中英文对照表 在大家日常办公和生活当中&#xff0c;笔记本电脑已成为非常重要工具。然而&#xff0c;随着笔记本电脑用的越久&#xff0c;电池的损耗难以…

创新指南|人工智能行为预测如何改变营销

在我们现在工作的人工智能营销新世界中&#xff0c;人工智能行为预测不仅作为一个流行词出现&#xff0c;而且作为一股革命力量&#xff0c;有望重新定义营销格局。 这种创新方法利用人工智能 (AI)的强大功能 来预测消费者行为&#xff0c;利用庞大而复杂的数据集来收集以前无法…

企业级数据治理学习总结

1. 水在前面 “数据治理”绝对是吹过的牛里面最高大上的题目了&#xff0c;本来想直接以《企业级数据治理》为题来水的&#xff0c;码字前又跑去图书馆借了几本书&#xff0c;翻了几页才发现自己连半桶水都提不起&#xff0c;撑死只能在小屁孩跟前吹吹牛。 好吧&#xff0c;实在…

【前端】-【防止接口重复请求】

文章目录 需求实现方案方案一方案二方案三 需求 对整个的项目都做一下接口防止重复请求的处理 实现方案 方案一 思路&#xff1a;通过使用axios拦截器&#xff0c;在请求拦截器中开启全屏Loading&#xff0c;然后在响应拦截器中将Loading关闭。 代码&#xff1a; 问题&…

详详详解动归数组常见习题(C/C++)

文章目录 最长递增数组序列&#xff08;必须连续&#xff09;dp[i] dp[i - 1] 1;最长递归子序列&#xff08;不需要连续&#xff09;dp[i] max(dp[i], dp[j] 1);俩层循环总结一维dp最长重复子数组最长公共子序列总结二维dp最终目标[3692. 最长连续公共子序列 - AcWing题库]…

【C++庖丁解牛】C++11---lambda表达式 | 包装器

&#x1f341;你好&#xff0c;我是 RO-BERRY &#x1f4d7; 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f384;感谢你的陪伴与支持 &#xff0c;故事既有了开头&#xff0c;就要画上一个完美的句号&#xff0c;让我们一起加油 目录 1. lambda表达式1.1 C98中…

ip地址与硬件地址的区别是什么

在数字世界的浩瀚海洋中&#xff0c;每一台联网的设备都需要一个独特的标识来确保信息的准确传输。这些标识&#xff0c;我们通常称之为IP地址和硬件地址。虽然它们都是用来识别网络设备的&#xff0c;但各自扮演的角色和所处的层次却大相径庭。虎观代理小二将带您深入了解IP地…

主成分分析在R语言中的简单应用:使用mvstats包

在数据科学领域&#xff0c;主成分分析&#xff08;PCA&#xff09;是一种广泛使用的技术&#xff0c;主要用于数据降维和探索性数据分析。PCA可以帮助我们发现数据中的模式&#xff0c;减少数据集的复杂性&#xff0c;同时保持数据中最重要的特征。本文将介绍如何在R语言中使用…

PID详解汇总

一、参照文章 PID的各种算法优缺点 二、位置式PID 优点:静态误差小,溢出的影响小。 缺点:计算量很大&#x

【PCL】教程 example2 3D点云之间的精确配准(FPFH特征对应关系估计变换矩阵)

这段代码主要实现了点云之间的配准功能&#xff0c;旨在通过估计点云的特征并找到最佳的对应关系来计算一个变换矩阵&#xff0c;从而可以将源点云&#xff08;src&#xff09;变换到目标点云&#xff08;tgt&#xff09;的坐标系统中。 代码功能和方法总结如下&#xff1a; 估…

上位机开发PyQt5(二)【单行输入框、多行输入框、按钮的信号和槽】

目录 一、单行输入框QLineEdit QLineEdit的方法&#xff1a; 二、多行输入框QTextEdit QTextEdit的方法 三、按钮QPushButton 四、按钮的信号与槽 信号与槽简介&#xff1a; 信号和槽绑定&#xff1a; 使用PyQt的槽函数 一、单行输入框QLineEdit QLineEdit控件可以输入…

黑马点评项目个人笔记+项目优化调整

博客须知 本篇博客内容来源与黑马点评项目实战篇-16.用户签到-实现签到功能_哔哩哔哩_bilibili&#xff0c;作者对视频内容进行了整合&#xff0c;由于记笔记时图片使用的是本地路径&#xff0c;所以导致博客的图片无法正常显示&#xff0c;如果有图片需求可以下载上方的pdf须…

程序员老鸟的 Pascal 语言菜鸟教程 -- 快速体验 Pascal

有些程序设计语言和编译器教材会以pascal语言的程序为例&#xff0c;这里写一个快速掌握简单应用的介绍。 1&#xff0c;安装 free pascal 编译器 ubuntu 22.04 直接通过 apt 源安装&#xff0c;此时的版本号为 3.2.2 1.1 安装 sudo apt install fp-compiler 1.2 简单测试 fpc…

【maven】pom文件详解和延伸知识

【maven】pom文件详解 【一】maven项目的pom文件详解【1】maven项目的目录结构【2】根元素和必要配置【3】父项目和parent元素【4】项目构建需要的信息【5】项目依赖相关信息&#xff08;1&#xff09;依赖坐标&#xff08;2&#xff09;依赖类型&#xff08;3&#xff09;依赖…

JavaScript this 上下文深度探索:综合指南涵盖隐式与显式call、apply、bind、箭头函数、构造函数等用法于多样场景

JavaScript中的this关键字代表函数执行的上下文环境&#xff0c;核心在于确定函数内部访问的当前对象。它根据函数调用方式动态变化&#xff0c;对事件处理、对象方法调用等至关重要。通过.call(), .apply(), .bind()或箭头函数控制this&#xff0c;可确保代码逻辑正确绑定对象…

python可视化学习笔记折线图问题-起始点问题

问题描述&#xff1a; 起始点的位置不对 from pyecharts.charts import Line import pyecharts.options as opts # 示例数据 x_data [1,2,3,4,5] y_data [1, 2, 3, 4, 5] # 创建 Line 图表 line Line() line.add_xaxis(x_data) line.add_yaxis("test", y_data) li…