华为机考前准备工作
很多同学在刷完真题后,就直接去考试了,会发现不是卡在了题目的难度上,而是卡在了代码数据的如何输入上。为了避免各位有志之士忽略小细节而导致的前功尽弃,博主特意总结了华为机考试题数据输入的几种情况及其源代码,仅供各位有志之士参考。
具体如下:
情况1:
输入一行两个整数
/*
输入数据
1 5
10 20
*/
#include <iostream>
using namespace std;int main(){int a,b;while(cin >> a >> b){cout << a+b <<endl;}return 0;
}
情况2:
输入第一行包括一个数据数组t
接下来每行包括两个正整数a,b
/*
输入第一行包括一个数据数组t
接下来每行包括两个正整数a,b
2
1 5
10 20
*/
#include <iostream>
using namespace std;int main(){int t;cin >> t;int a,b;while(t){cin >> a >> b;t--;}return 0;
}
情况3:
输入包括两个正整数a,b,输入数据有多组,如果输入为0 0 则结束输入
/*
输入包括两个正整数a,b,输入数据有多组,如果输入为0 0 则结束输入
1 5
10 20
0 0
*/
#include <iostream>
using namespace std;int main(){int a,b;while(true){cin >> a >>b;if(a == 0 && b == 0){break;}cout << a + b << endl; }return 0;
}
情况4:
输入数据包括多组
每组数据一行,每行第一个整数位整数的个数n,n为0的时候结束输入
接下来n个正整数,既需要求和每个正整数
/*
输入数据包括多组
每组数据一行,每行第一个整数位整数的个数n,n为0的时候结束输入
接下来n个正整数,既需要求和每个正整数
4 1 2 3 4
5 1 2 3 4 5
0
*/#include <iostream>
using namespace std;
int main(){int n;while(true){cin >> n;if(n == 0){break;}int temp = 0;int sum = 0;for(int i = 0; i < n;i++){cin >> temp;sum = sum + temp;}cout << sum << endl; }return 0;
}
情况5:
输入的第一行包括一个正整数t,表示数据数组
接下来t行,每行一组数据
每行的第一个整数位整数的个数n
接下来n个正整数,既需要求和每个正整数
/*
输入的第一行包括一个正整数t,表示数据数组
接下来t行,每行一组数据
每行的第一个整数位整数的个数n
接下来n个正整数,既需要求和每个正整数
2
4 1 2 3 4
5 1 2 3 4
*/#include <iostream>
using namespace std;
int main(){int t;cin >> t;for(int i = 0; i < t; i++){int n;cin > n;int temp = 0;int sum = 0;for(int j = 0; j < n; j++){cin >> temp;sum = sum + temp;}cout << sum << endl;}return 0;
}
情况6:
输入数据多组,每行表示一组输入数据
每行的第一个整数位整数的个数n
接下来n个正整数,既需要求和每个正整数
/*
输入数据多组,每行表示一组输入数据
每行的第一个整数位整数的个数n
接下来n个正整数,既需要求和每个正整数
4 1 2 3 4
5 1 2 3 4 5
*/#include <iostream>
using namespace std;
int main(){int n;while(cin >> n){ // 输入必须方里边// 利用cin 的fail语句和eof语句 退出循环if(cin.fail()){cin.clear();if(cin.eof()){break;}}int temp = 0;int sum = 0;for(int i = 0; i < n; i++){cin >> temp;sum = sum + temp;}cout << sum << endl;}return 0;
}
情况7:
输入数据多组,每行表示一组输入数据
每行不定有n个整数,空格隔开
/*
输入数据多组,每行表示一组输入数据
每行不定有n个整数,空格隔开
1 2 3
4 5
0 0 0 0 0
*/
#include <iostream>
#include <vector>
using namespace std;int main() {int n;vector<int> arr; // 用于存储每一行的整数// 循环读取直到遇到EOFwhile (cin >> n) {arr.push_back(n); // 读取一个整数并存入vector// 检查下一个输入是否为整数,如果不是(比如是换行符或EOF),则处理当前行if (cin.peek() == '\n' || cin.peek() == EOF) {// 处理当前行数据,例如计算和int sum = 0;for (int num : arr) {sum = sum + num;}cout << "当前行的和为: " << sum << endl;// 清空当前行的存储,准备读取下一行arr.clear(); // 这个清空很关键// 检查是否到达EOF,如果是则跳出循环if (cin.peek() == EOF && cin.eof()) {break;// 对于退出循环很关键,这两句代码绝对不能省}}}return 0;
}
情况8:
输入有两行,第一行数字n
第二行时n个字符串,字符串之间用空格隔开
/*
输入有两行,第一行数字n
第二行时n个字符串,字符串之间用空格隔开
5
c d a bb e*/#include <iostream>
using namespace std;
#include <vector>
#include <string>int main(){int n;vector<string> str;string s;while(cin >> s){str.push_back(s);if(cin.get == '\n'){sort(str.begin(),str.end());for(int i = 0; i < n; i++){cout << str[i]<<" ";}str.clear();}}return 0;
}
情况9:
多个测试用例,每个测试用例一行
每行通过空格隔开,有n个字符
/*
多个测试用例,每个测试用例一行
每行通过空格隔开,有n个字符
a c bb
f dddd
nowcoder
*/#include <iostream>
using namespace std;
#include <vector>
#include <string>bool cmp(const string& a, const string& b) {return a < b; // 使用字典顺序比较
}int main() {string s;vector<string> str;while (cin >> s) {str.push_back(s);if (cin.get() == '\n') { // 判断是否一行数据是否输入完成sort(str.begin(), str.end(),cmp);for (int i = 0; i < str.size(); i++){cout << str[i] << " ";}cout << endl;str.clear(); // 清空数组,等待重新输入下一行 }}return 0;
}
情况10:
/*
多个测试用例,每个测试用例一行
每行通过英文逗号隔开,有n个字符
a,c,b
f,dddd
nowcoder
*/#include <iostream>
using namespace std;
#include <vector>
#include <string>
#include <sstream>int main() {vector<string> str;while (true) {// 使用逗号作为分隔符读取字符串string inputLine;getline(cin, inputLine); // 读取整行文本stringstream ss(inputLine);string s;while (getline(ss, s, ',')) { str.push_back(s);}sort(str.begin(), str.end(), cmp);for (int i = 0; i < str.size(); i++){ if (i == str.size()-1) {cout << str[i];}else {cout << str[i] << ",";}}cout << endl;str.clear(); // 清空数组,等待重新输入下一行if (cin.peek() == EOF || cin.eof()) {break; // 对于退出循环很关键,这两句代码绝对不能省}}return 0;
}
情况11:
在诸如题目定义了很大的数据范围的时候,要选择合适的数据类型定义变量
/*
例如定义的两个变量的值的范围:[1, 1e10]
这个时候就不能使用int数据类型,而是需要使用long或者long long数据类型
*/#include <iostream>
using namespace std;int main(){long long a,b;cout << a+b <<endl;return 0;
}
--------------------------------------------------------仰望分割符---------------------------------------------------------
如果坐在电脑前的你看到这里,说明你已经向成功迈出了一大半,前途不可限量,加油吧,骚年!
( 此处是一个巨型表情包 )
相关文章:
华为机考前准备工作
很多同学在刷完真题后,就直接去考试了,会发现不是卡在了题目的难度上,而是卡在了代码数据的如何输入上。为了避免各位有志之士忽略小细节而导致的前功尽弃,博主特意总结了华为机考试题数据输入的几种情况及其源代码,仅…...
偏差、方差(训练误差,验证误差)
目录 一、偏差、方差:二、正则化参数λ对偏差、方差的影响:三、训练集规模对偏差、方差的影响:四、模型复杂度对偏差、方差的影响:五、方差、偏差如何帮助训练:1.高偏差解决方法:2.高方差解决方法ÿ…...
Retrofit框架源码深度剖析【Android热门框架分析第二弹】
Android热门框架解析,你确定不来看看吗? OkHttp框架源码深度剖析【Android热门框架分析第一弹】 Retrofit框架源码深度剖析【Android热门框架分析第二弹】 什么是Retrofit? 准确来说,Retrofit 是一个 RESTful 的 HTTP 网络请求…...
C++Windows环境搭建(CLion)
文章目录 CLion下载安装CLion下载CLion安装新建项目新建一个文件基础设置字体设置clion中单工程多main函数设置 参考 CLion下载安装 CLion下载 打开网址:https://www.jetbrains.com/clion/download/ 点击Download进行下载。 CLion安装 双击下载好的安装包&…...
【区块链 + 智慧政务】省级一体化区块链平台 | FISCO BCOS应用案例
在加强数字政府建设的大背景下,科大讯飞广泛应用数字技术于政府管理服务,推动政府数字化、智能化运行。同时, 统筹推进业务、数据和技术的融合,提升跨地域、跨层级、跨部门和跨业务的协同管理和服务水平。 当前政务信息化建设中&…...
局域网远程共享桌面如何实现
在局域网内实现远程共享桌面,可以通过以下几种方法: 一、使用Windows自带的远程桌面功能: 首先,在需要被控制的电脑上右键点击“此电脑”,选择“属性”。 进入计算机属性界面后,点击“高级系统设置”&am…...
Ubuntu固定虚拟机的ip地址
1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安装时报错W: Target CNF (multiverse/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list:10, 检查 /etc/apt/sources.list…...
python破解密码·筛查和选择
破解密码时可能遇到的几种情况 ① 已知密码字符,破排序 ② 已知密码位数,破字符 ③ 已知密码类型,破字位 ④ 已知部分密码,破未知 ⑤ 啥都不知道,盲破,玩完 ⑥ 已知位数、字符、类型、部分密码中的几个&am…...
【将应用程序注册为系统服务】
在 Linux 系统中,将应用程序注册为系统服务可以使其在系统启动时自动运行,并且可以通过 systemctl 命令进行管理。/etc/systemd/system 目录是用于存放用户定义的 systemd 服务单元文件的目录。 将 Logstash 注册为系统服务 假设你已经安装了 Logstash…...
从0-1搭建一个web项目(路由目录分析)详解
本章分析vue路由目录文件详解 ObJack-Admin一款基于 Vue3.3、TypeScript、Vite3、Pinia、Element-Plus 开源的后台管理框架。在一定程度上节省您的开发效率。另外本项目还封装了一些常用组件、hooks、指令、动态路由、按钮级别权限控制等功能。感兴趣的小伙伴可以访问源码点个赞…...
Zabbix分布式监控
目录 分布式监控架构 实现分布式监控的步骤 优点和应用场景 安装Zabbix_Proxy Server端Web页面配置 测试 Zabbix 的分布式监控架构允许在大规模和地理上分散的环境中进行高效的监控。通过分布式监控,Zabbix 可以扩展其监控能力,支持大量主机和设备…...
前端面试39(关于git)
针对前端开发者的Git面试题可以覆盖Git的基础概念、常用命令、工作流程、团队协作、以及解决冲突等方面。以下是一些具体的Git面试 Git基础知识 什么是Git? Git是一个分布式版本控制系统,用于跟踪计算机文件的更改,并协调多个人共同在一个项…...
13--memcache与redis
前言:数据库读取速度较慢一直是无法解决的问题,大型网站应对的方式主要是使用缓存服务器来缓解这种情况,减少数据库访问次数,以提高动态Web等应用的速度、提高可扩展性。 1、简介 Memcached/redis是高性能的分布式内存缓存服务器…...
QT学习日记一
创建QT文件步骤 这是创建之后widget.cpp和widget.h文件的具体代码解释,也是主要操作的文件,其中main.cpp不用操作,ui则是图形化操作界面,综合使用时,添加一个元件要注意重编名和编译一下,才能在widget这类…...
redhat7.x 升级openssh至openssh-9.8p1
1.环境准备: OS系统:redhat 7.4 2.备份配置文件: cp -rf /etc/ssh /etc/ssh.bak cp -rf /usr/bin/openssl /usr/bin/openssl.bak cp -rf /etc/pam.d /etc/pam.d.bak cp -rf /usr/lib/systemd/system /usr/lib/systemd/system.bak 3.安装…...
Spring Cloud Eureka
引入:远程调用时,url是写死的 String url "http://127.0.0.1:9090/product/" orderInfo.getProductId(); 解决思路: 比如(医院,学校等)机构的电话号码发生变化,就需要通知各个使⽤…...
threejs
1.场景清空,释放内容 // 假设你已经有一个Three.js的场景对象scene// 函数:清空场景中的所有对象 function clearScene(scene) {while(scene.children.length > 0){const object scene.children[0];if(object.isMesh) {// 如果有几何体和材质&#…...
将pytorch 模型封装为c++ api 例子
在 PyTorch 中,通常使用 Python 来定义和训练模型,但是可以将训练好的模型导出为 TorchScript,然后在 C 中加载和使用。以下是一个详细的过程,展示了如何将 PyTorch 模型封装成 C API: 步骤 1: 定义和训练模型&#x…...
珠宝迷你秤方案
珠宝迷你秤作为一种便携式电子称重设备,因其小巧、便携、精度高等特点,广泛应用于各种需要精确称重的场景。可能这个目前在国内使用的人比较少,但在西方国家珠宝迷你秤却是可以用来送礼的物品。因为珠宝迷你秤的外观跟手机外观大多相似&#…...
边缘概率密度、条件概率密度、边缘分布函数、联合分布函数关系
目录 二维随机变量及其分布离散型随机变量连续型随机变量边缘分布边缘概率密度举例边缘概率密度 条件概率密度边缘概率密度与条件概率密度的区别边缘概率密度条件概率密度举个具体例子 参考资料 二维随机变量及其分布 离散型随机变量 把所有的概率,都理解成不同质量…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
Linux-07 ubuntu 的 chrome 启动不了
文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...
select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
