【笔试强训】Day1 --- 数字统计 + 两个数组的交集 + 点击消除

文章目录

    • 1. 数字统计
    • 2. 两个数组的交集
    • 3. 点击消除

1. 数字统计

【链接】:数字统计
在这里插入图片描述

解题思路:模拟,利用数学知识,计算每个数字中2出现的个数。(这里也可以将数字转换成字符串来统计字符’2’出现的个数)

#include <iostream>
using namespace std;int main() {int l,r;cin>>l>>r;int ret = 0;for(int i = l;i <= r;i++){int temp = i;while(temp){if(temp % 10 == 2) ret++;temp /= 10;}}cout<<ret<<endl;return 0;
}// #include <iostream>
// using namespace std;// int main() {
//     int l,r;
//     cin>>l>>r;//     int ret = 0;
//     for(int i = l;i <= r;i++)
//     {
//         string temp = to_string(i);
//         for(auto& ch:temp)
//         {
//             if(ch == '2') ret++;
//         }
//     }
//     cout<<ret<<endl;
//     return 0;
// }

2. 两个数组的交集

【链接】:两个数组的交集
在这里插入图片描述

解题思路:利用哈希表记录第一个数组中每个元素是否出现,再次遍历第二个数组的元素,如果元素在哈希表出现就将该元素添加到记录最终结果的数组 ret 中,然后将哈希表中该元素删除(对应值改为false即可),遍历完成后,最后结果即在 ret 数组中。

class Solution {vector<int> ret; // 记录最终结果bool hash[1010] = {false}; // 哈希表
public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {for(auto& x:nums1) // 统计第一个数组{hash[x] = true;}for(auto& x:nums2) // 遍历第二个数组{if(hash[x]) ret.push_back(x);hash[x] = false;}return ret;}
};

3. 点击消除

【链接】:点击消除

在这里插入图片描述

解题思路:利用栈的先进先出特点,并不需要一个真的栈,我们只需要用一个 string 来模拟栈即可,遍历字符串,当栈顶元素与当前遍历到的字符不相等(或者栈为空)时,将该字符加入栈中,否者将栈顶这个相等的字符弹出,继续遍历下一个字符,直到字符串末尾为止。

#include <iostream>
using namespace std;int main() {string str,st; // st用来模拟栈cin>>str;for(auto& ch:str){if(!st.empty() && st.back() == ch) st.pop_back();else st += ch;}cout<<(st.empty() ? "0" : st)<<endl;return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# 语言类型(五)—其他

总目录 C# 语法总目录 参考链接&#xff1a; C#语法系列:C# 语言类型(一)—预定义类型值之数值类型 C#语法系列:C# 语言类型(二)—预定义类型之字符串及字符类型简述 C#语法系列:C# 语言类型(三)—数组/枚举类型/结构体 C#语法系列:C# 语言类型(四)—传递参数及其修饰符 C#语法…

如何使用Flask搭建web程序框架并实现无公网IP远程访问本地程序

文章目录 前言1. 安装部署Flask并制作SayHello问答界面2. 安装Cpolar内网穿透3. 配置Flask的问答界面公网访问地址4. 公网远程访问Flask的问答界面 前言 Flask是一个Python编写的Web微框架&#xff0c;让我们可以使用Python语言快速实现一个网站或Web服务&#xff0c;本期教程…

模拟器无法ADB链接的所有情况及解决方案

前言&#xff1a; adb&#xff08;Android Debug Bridge&#xff09;安卓调试桥&#xff0c;简单可以理解为外部连接安卓内部的一个接口&#xff0c;走的是tcp协议。 但是在模拟器上面经常会遇到连不上adb&#xff0c;在此收集一下各种情况&#xff0c;想起来或者遇到了就更新…

bonding原理分析和问题排查

bonding原理 发送端&#xff1a; 使用网卡bond3模式&#xff08;广播模式BOND_MODE_BROADCAST&#xff09;将报文从两个网卡同时发出&#xff0c;无需修改报文。 接收端&#xff1a; 根据发送节点时间的链路通断状态&#xff0c;接收端设置一条线路为活动线&#xff0c;另一条…

免费泛域名SSL如何申请,和通配符有什么区别

-----让我们明确什么是泛域名。所谓泛域名&#xff0c;是指使用星号&#xff08;*&#xff09;作为子域名的占位符&#xff0c;它可以匹配任意子域名。-----而通配符在域名中&#xff0c;它可以出现在主域名的任何位置&#xff0c;它可以用于主域名和子域名的保护。 主要应用场…

XZ-Utils后门事件过程及启示

Part.01 背景 XZ-Utils&#xff08;曾经叫做LZMA Utils&#xff09;是一款开源的无损压缩命令行工具&#xff0c;是用C语言编写的跨平台工具&#xff0c;可以用于类Unix系统和Windows系统。在多数情况下&#xff0c;xz的压缩率要好过gzip和bzip2&#xff0c;解压速度也快过bz…

算法学习笔记——专题拓展2:数组双指针经典习题

关于数组的技巧有&#xff1a;双指针(快慢指针&#xff08;时差、位差&#xff09;&#xff09; 例题1&#xff1a;合并两个有序数组 代码&#xff1a;逆向双指针&#xff0c;可以不用重开数组&#xff0c;如果是正向的&#xff0c;需要重开一个数组腾空间。 class Solution …

图书借阅系统开发笔记

图书借阅系统开发介绍及心得 项目已开源到 github https://github.com/Qiu-JW/books-manage-systemgitee https://gitee.com/qiu-jw/books-manage-system 技术栈 前端 HTML5、CSS、JS、jQuery、axios、bootstrap 后端 servlet、JSP、JDBC 数据库 MySQL 项目采用mvc模式构成 …

Java的数组定义和使用

目录 1.前言 2.数组的概念 3.在Java中的创建和初始化 3.1数组的创建 3.2数组的初始化 4.关于使用 4.1数组元素的访问 4.2数组的遍历 4.3length和length()的区别 5.数组其实是引用类型数据 5.1初始JVM的内存分布 5.2基本类型变量与引用类型变量的区别 5.3关于null的认识 5.4设计…

手眼标定(外参)

1. 传统使用张正友相机标定,角点检测 //张正友相机标定,角点检测 for(int i=1;i<=images_number;i++){Mat image=imread(images_path+to_string(i)+String("/color.jpg"));Mat output=image.clone();image_size.width=image.cols;image_size.height=image.…

(34)4.17 作业课

//弓箭型 int main() { int n 0; while (scanf("%d", &n) 1) { int i 0; for (i 0; i < n; i) { int j 0; for (j 0; j < n - i; j) { printf(" &q…

工作流JBPM画图与配置

文章目录 ☃️7.1 画图☃️7.2 配置7.2.1 配置任务办理人7.2.1.1 写死的方式配置任务办理人&#xff08;不推荐&#xff09;7.2.1.2 #{}方式配置任务办理人7.2.1.3 实现接口方式配置任务办理人7.2.1.4 方法指定方式分配任务办理人 7.2.2 配置节点属性7.2.2.1 判断节点(decision…

Sourcetree安装使用(补个笔记)

Sourcetree介绍 Sourcetree是一款免费的Git图形化客户端&#xff0c;它由Atlassian开发&#xff0c;提供了跨平台的支持&#xff0c;可运行在Windows和Mac操作系统上。Sourcetree可以让开发者更方便地使用Git来管理代码&#xff0c;不需要在命令行中输入复杂的Git命令&#xf…

symfony框架介绍

Symfony是一个功能强大的PHP框架,它提供了丰富的组件和工具来简化Web开发过程。以下是一些关于Symfony的主要特点: 可重用性: Symfony提供了一系列可重用的PHP组件,这些组件可以用于任何PHP应用程序中。灵活性: Symfony允许开发者根据项目需求灵活选择使用哪些组件,而不是强…

HTML学习笔记:链接target属性

关于target的使用&#xff1a; <a href"https://www.baidu.com" target"_parent">网址链接</a>其中关于target四个特殊目标的理解&#xff0c;W3school上的解释为&#xff1a; HTML 标签的 target 属性 其中_black和_self两个属性很好理解&…