C++:以空格分隔的字符串的输入输出
vivo2022届提前批校招笔试题
幸运员工
题目描述:
选出工号中含有数字7或是7的倍数的幸运员工。
输入描述:
一组空格分隔的员工工号列表
输出描述:
幸运员工总人数,未找到时输出0
#include<iostream>
#include<string>
#include<cstring>
#include<vector>
using namespace std;class Solution {public:int findSeven(vector<int>& nums) {int count = 0; //没有找到就返回0for (int x : nums) {if (x % 7 == 0) {//7的倍数count++;}else {//含有数字7while (x) {int m = x % 10;if (m == 7) {//x中一旦找到7就退出循环count++;break;}x /= 10;}}}return count;}
};int main() {string s; //保存从控制台输入的字符串vector<int> numbers; //拆分后的数字getline(cin, s);while (!s.empty()) {int loc = s.find(" "); //寻找空格在字符串s中的位置if (loc == string::npos) { //没有找到空格,说明到了最后一个位置numbers.push_back(stoi(s)); s.clear();break; //清除字符串s并退出循环}string s_tmp = s.substr(0, loc); //从0开始往后数loc个字符numbers.push_back(stoi(s_tmp));s.erase(0, loc + 1); //擦除从0开始往后数loc+1个字符,包括擦除空格}Solution sol;int res = sol.findSeven(numbers);cout << res << endl;
}
string
中find
函数的返回值是查找字母在字符串中的位置。没有找到,则会返回npos
。
工号数字分为三种情况:
- 仅为7的倍数,如:105140
- 仅为含有7的数,如:105720、770251
- 既是7的倍数又是含有7的数,如:700000
第一种情况没有什么疑问,count
只自增一个就进入下一个循环。
第二种情况要注意,一个号码里有多个7的情况,不要对count
进行多次自增操作,具体做法就是一旦检测到7就及时进入下一个循环。
第三种情况,既是7的倍数又含有7,同样注意不要多次自增,具体解决方法就是将两种情况用if-else
语句分割,确定这个数符合一种情况就及时进入下一个循环,避免重复计数。
C++:以空格分隔的字符串的输入输出相关推荐
- 24.shell中list详解,定义list,获取List的总个数,获取list的某个元素值,将list的每个元素转换成以空格分隔的字符串,空格分隔的字符串转换成list,for循环list
文章目录 前言 定义list 获取List的总个数 获取list的某个元素值 将list的每个元素转换成以空格分隔的字符串 空格分隔的字符串转换成list for循环list 总结 友情链接 前言 s ...
- 每天一道LeetCode-----以单词为单位逆序字符串,每个单词之间以一个空格分隔(原字符串中可能有多个空格)
Reverse Words in a String 原题链接Reverse Words in a String 将字符串以单词为单位逆序,每个单词之间以一个空格间隔(原字符串中可能有多个空格) 逆序的 ...
- php用空格分隔的字符串对比,探讨各种PHP字符串函数的总结分析
PHP字符串函数包括查找字符位置函数:提取子字符函数:替换字符串:字符长度:比较字符函数:分割成数组字符:去除空格等等. PHP语言中的字符串函数也是一个比较易懂的知识.今天我们就为大家总结了将近12 ...
- python读取用空格分隔的文字_Python:从类似readlin的文件中读取空格分隔的字符串...
您需要创建一个包装函数:这非常简单:def read_by_tokens(fileobj): for line in fileobj: for token in line.split(): yield ...
- java按空格分字符串,两种用空格分隔的java字符串的方式
两种用空格分隔的java字符串的方式 两种方式: 1. String str = "123 456 789 111"; String [] strArray = str.split ...
- 把一个CString字符串以空格分隔成多个CString字符串
一个CString字符串中含有多个空格分隔的小属性,如何把它以空格分隔成多个CString字符串. 例题:一个CString字符串:张三 20 四川 14478899@qq.com 如何把每一个小属性 ...
- php用一个或多个空格分隔字符串
字符串: php 用一个或多个空格 分隔 字符串 输出结果:php 用一个或多个空格 分隔 字符串 $str2=" php 用一个或多个空格 分隔 字 ...
- python一行输入多个值用空格隔开_2020-09-22-Python-函数嵌套、filter()函数、一行输入多个整数(空格分隔)、多维列表的输入...
python笔记002----函数嵌套.filter()函数.一行输入多个整数(空格分隔).多维列表的输入 •字符串列表---内带2维列表 a=['123'] print(a[0][1]) for i ...
- 每天一道LeetCode-----将单词数组分成多行,每行长度相同,单词之间用空格分隔,要求空格尽量均匀分布
Text Justification 原题链接Text Justification 将以这个字符串数组重组成几行,每个字符串用空格分隔,要求 每行的长度相同 每行的空格需要均匀分配,且每个单词之间至少 ...
- 信息学奥赛一本通 1026:空格分隔输出 | OpenJudge NOI 1.1 06
[题目链接] ybt 1026:空格分隔输出 OpenJudge NOI 1.1 06:空格分隔输出 [题目考点] 1. 输入输出char, int, float, double类型的量 使用cin, ...
最新文章
- 英国继银行被窃之后 信贷公司Wonga数十万客户数据被泄
- 前紫光展锐CTO创业造芯:主打边缘AI视觉,融资10亿,9个月流片
- 赠书|大厂面试喜欢考算法,该怎么破?
- 关于IE记录Cookie的问题
- poj1797Heavy Transportation最大生成树
- android dp转px的公式_公式px到dp,dp到px android
- 为什么不能睁一只眼闭一只眼_自媒体人上哪里找非常多的原创短视频素材?我为什么一定要你做原创?...
- php 日期 间隔,PHP实现计算日期间隔天数的方法
- 机器人环境感知算法发展概述
- XML的DTD和Schema约束
- python初学入门————列表
- 【Unity3D开发小游戏】Unity3D开发《3D迷宫》小游戏
- v-charts 如何更改文本颜色
- 人机的未来关键在于发现新的逻辑体系
- 8个亿!河南首富再次无偿捐款西湖大学,西湖大学河南籍校董高达11位
- 计算机网络 5 - 链路层
- python 爬取贝壳网小区名称_用Python爬取贝壳网新房和二手房数据
- Java常用类,这一次帮你总结好!
- 系统报错信息:[0x7FFA30288660] ANOMALY: meaningless REX prefix used
- LeetCode每日一题,积少成多,量变到质变(最近比较忙不定期持续更新.........)
热门文章
- 解决在IE浏览器中JQuery.resize()执行多次的方法(转)
- U盘安装Debian 6 amd64版本
- java captivate_flashremoting-java-win-en.exe
- python抖音表白软件手机版,我喜欢你 抖音表白程序python版
- java 八进制 转义字符_string中转义字符
- java有多少类库_Java类库和常用类库有哪些以及相关的介绍
- php布署 群辉_docker一键搭建Nginx+PHP环境(含自动部署命令)
- 平衡二叉树、B树、B+树、B*树
- 什么是PM2 ---- (零秒重启)
- Oracle查询成绩高于成绩,oracle认证考试成绩如何查询?