华为机考前准备工作
很多同学在刷完真题后,就直接去考试了,会发现不是卡在了题目的难度上,而是卡在了代码数据的如何输入上。为了避免各位有志之士忽略小细节而导致的前功尽弃,博主特意总结了华为机考试题数据输入的几种情况及其源代码,仅供各位有志之士参考。
具体如下:
情况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…...
珠宝迷你秤方案
珠宝迷你秤作为一种便携式电子称重设备,因其小巧、便携、精度高等特点,广泛应用于各种需要精确称重的场景。可能这个目前在国内使用的人比较少,但在西方国家珠宝迷你秤却是可以用来送礼的物品。因为珠宝迷你秤的外观跟手机外观大多相似&#…...
边缘概率密度、条件概率密度、边缘分布函数、联合分布函数关系
目录 二维随机变量及其分布离散型随机变量连续型随机变量边缘分布边缘概率密度举例边缘概率密度 条件概率密度边缘概率密度与条件概率密度的区别边缘概率密度条件概率密度举个具体例子 参考资料 二维随机变量及其分布 离散型随机变量 把所有的概率,都理解成不同质量…...
超短脉冲激光自聚焦效应
前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...
论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
HBuilderX安装(uni-app和小程序开发)
下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
为什么要创建 Vue 实例
核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...
Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...
【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道
文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...
微服务通信安全:深入解析mTLS的原理与实践
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言:微服务时代的通信安全挑战 随着云原生和微服务架构的普及,服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...
【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统
Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...
