华为2018秋招编程题1:在字符串中找出连续最长的数字串
来源:互联网 发布:模拟城市5未来之城mac 编辑:程序博客网 时间:2024/06/05 02:44
题目描述
在字符串中找出连续最长的数字串,并把这个串的长度返回。如果存在长度相同的连续数字串,返回最后一个连续数字串。
注意:数字串只需要是数字组成的就可以,并不需要顺序,比如数字串“1234”的长度小于数字串“1359055”,如果没有数字,则返回空字符串而不是NULL!(说明:不需要考虑负数)
输入描述
字符串
输出描述
连续数字串&在所有数字串最长的长度
示例
输入
abcd12345ed125ss123058789
输出
1230558789
9
代码(75%)
题目中没有明确说明,在空串的时候应该怎么输出,猜测是这个问题。
#include <iostream>#include <string>int main() { string str; while (cin >> str) { int max = 0; string tmp; string res; for (int i = 0; i < str.size(); ++i) { if (str[i] >= '0' && str[i] <= '9') { tmp += str[i]; while (str[i+1] >= '0' && str[i+1] <= '9') { i++; tmp += str[i]; } if (tmp.size() > max) { max = tmp.size(); res = tmp; } else if (tmp.size() == max) { res = tmp; } } tmp.clear(); } cout << res << "," << max << endl; } return 0;}
阅读全文
0 0
- 华为2018秋招编程题1:在字符串中找出连续最长的数字串
- 【校招笔试面试之字符串处理】在字符串中找出连续最长的数字串。
- 华为练习3 在字符串中找出连续最长的数字串
- 华为OJ 在字符串中找出连续最长的数字串
- 2014华为机试-在字符串中找出连续最长的数字串
- [华为机试练习题]43.在字符串中找出连续最长的数字串
- 华为OJ测试--在字符串中找出连续最长的数字串
- 华为oj:在字符串中找出连续最长的数字串
- 华为OJ(在字符串中找出连续最长的数字串)
- 华为oj 在字符串中找出连续最长的数字串
- 华为OJ:在字符串中找出连续最长的数字串
- 华为oj 在字符串中找出连续最长的数字串
- 华为OJ平台——在字符串中找出连续最长的数字串
- 【华为OJ】【087-在字符串中找出连续最长的数字串】
- 华为机试题—在字符串中找出连续最长的数字串 c++
- 华为OJ 初级:在字符串中找出连续最长的数字串
- 华为OJ—— 在字符串中找出连续最长的数字串
- 华为OJ——在字符串中找出连续最长的数字串
- Java反射的作用
- NoSQL分类及ehcache memcache redis 三大缓存的对比
- 给初学者的RxJava2.0教程(七)
- struts2的核心和工作原理
- 深入java 异常
- 华为2018秋招编程题1:在字符串中找出连续最长的数字串
- reverse、inverse和converse区别
- zookeeper 相关
- Centos6.9编译安装FFmpeg
- linux grep 正则表达式
- 用js 删除一组数组中第五大的数,删除之后的数组次序保持不变,若第五大数重复删除任意一个即可。
- 软件工程概述
- Python中的str与unicode处理方法
- Android7.0持久化技术