题解 | #在字符串中找出连续最长的数字串#
在字符串中找出连续最长的数字串
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;
}
基恩士成长空间 446人发布