华为OJ平台——在字符串中找出连续最长的数字串
2016-05-14 23:10
507 查看
题目如下:
![](http://img.blog.csdn.net/20160514230519261)
答案(C++):
#include<iostream> #include<string> #include<vector> using namespace std; int main(){ string str; getline(cin,str); //每次统计的数字的个数 int maxCount=0; //存储每个连续的字符串 vector<string> v; for(int i=0;i<str.length();i++){ int count=0; //找到有数字出现的地方 while(!isdigit(str[i])&&i<str.length()){ i++; } //找到连续数字字符串的开始位置 int begin=i; while(isdigit(str[i])&&i<str.length()){ count++; i++; } v.push_back(str.substr(begin,count)); i--; if(count>maxCount){ maxCount=count; } } //找到字符串最长的那个vector string result=""; for(vector<string>::iterator it=v.begin();it!=v.end();it++){ if(((string)*it).length()>result.length()){ result=*it; } } if(result!=""){ cout<<result<<","<<maxCount<<endl; } else{ cout<<"0"<<endl; } return 0; }
注意点: (1):输入空格,回车后的结果是"0".而不是" ,0" (2):直接回车后的结果是"0".而不是" ,0"
相关文章推荐
- Windows 8.1环境下安装Kali Linux 2016.1双系统
- 让jquery.tmpl.js支持index序号
- mac 安装Android studio遇到的问题及解决
- lombok工具jar
- 反射应用(二)
- SQL语言基础二
- table中cellspacing、cellpadding的css替代写法
- android studio 配置butterknife 8.0.1
- 反射入门(一)
- swift 之 mustache模板引擎
- UVa 12290 - Counting Game
- Executor框架
- gulp
- RHEL7文件查找find
- (一)桌面应用程序技术
- 91. Decode Ways
- iBotCloud-小i机器人在微信公众号中实现智能回答
- linux设备号分配
- Mysql存储引擎
- Java中抽象类和接口的区别