算法之字符串找出最长的数字串

分析和思路:while循环判断是否是数字且相等,相等则进入循环,用变量保存较大值即可
1 // TheLongestNumber.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 2 // 3 #include <iostream> 4 #include "iostream" 5 #include "string" 6 #include "vector" 7 using namespace std; 8 9 int main() 10 { 11 string input; 12 while (cin >> input) 13 { 14 int max = 0; 15 vector<string> v; 16 for (int i = 0; i < input.size(); i++) 17 { 18 int count = 0; 19 if (input[i] >= '0'&&input[i] <= '9') 20 { 21 string temp; 22 while (i < input.size() && (input[i] >= '0'&&input[i] <= '9')) 23 { 24 temp.append(1, input[i]); 25 count++; 26 i++; 27 } 28 if (count > max) 29 { 30 v.clear(); 31 max = count; 32 v.push_back(temp); 33 } 34 else if (count == max) 35 { 36 max = count; 37 v.push_back(temp); 38 } 39 } 40 41 } 42 if (v.size() == 1) 43 { 44 cout << v[0] << "," << v[0].size()<<endl; 45 } 46 else 47 { 48 for (int i = 0; i < v.size(); i++) 49 { 50 cout << v[i]; 51 52 } 53 cout << ","; 54 cout << v[0].size() << endl; 55 } 56 57 } 58 return 0; 59 }
主要为了自己学习

浙公网安备 33010602011771号