题解 | #在字符串中找出连续最长的数字串#
在字符串中找出连续最长的数字串
https://www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () => (await iter.next()).value; void async function () { // Write your code here while(line = await readline()){ let num_str = line; let str_arr = []; for(let i=0;i<num_str.length; i++){ // 穷举 let j = i let tmp_str = ''; while(!isNaN(Number(num_str.substr(j,1))) && j<num_str.length){ tmp_str+= num_str.substr(j,1); j++; } str_arr.push(tmp_str); } let max_length = 1; // 没必要是0,应从1开始 let max_arr = []; str_arr.forEach(item=>{ if(item.length>max_length){ // 发现新的最长 max_length = item.length; max_arr = []; // 重置数组 max_arr.push(item); // 放入最新 }else if(item.length == max_length){ // 发现相同长度的其他字符串,push进去 max_arr.push(item); } }); console.log(max_arr.join('')+','+max_length); } }()