题解 | #在字符串中找出连续最长的数字串#

在字符串中找出连续最长的数字串

https://www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec

// HJ92 在字符串中找出连续最长的数字串.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include<iostream>
#include<bits/stdc++.h>
#include<unordered_map>

using namespace std;
typedef long long ll;
#define N 10

int main()
{
	string s;
	while (getline(cin,s))
	{
		vector<string>dp;
		int len=s.size(), max_length=0;
		for (int i = 0; i < len; i++)
		{
			string tmp = "";
			int j = i;
			while (isdigit(s[j]) && j < len)//使用while函数
			{
				tmp.push_back(s[j]);
				j++;
			}
			int count = tmp.size();
			if (count > max_length)//判断
			{
				dp.clear();
				dp.push_back(tmp);
				max_length = count;
			}
			else if(count==max_length)//相等情况
			{
				dp.push_back(tmp);
			}
		}
		for (int i = 0; i < dp.size(); i++)//输出
		{
			cout << dp[i];
		}
		cout << ",";
		cout << dp[0].length() << endl;//输出长度
	}
	return 0;
}

全部评论

相关推荐

头像
10-27 15:50
门头沟学院 Java
想进开水团喝开水:有一种店 只能外卖 不能堂食 你猜为什么
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务