一次AC,还是比较简单的
class Solution {
public:
string func(int start,int end,vector<int>& nums)
{
if(start==end)
return to_string(nums[start]);
else
return to_string(nums[start])+"->"+to_string(nums[end]);
}
vector<string> summaryRanges(vector<int>& nums) {
vector<string> result;
if(nums.size()==0)
return result;
int start=0;
int now=0;
int next=1;
while(next<nums.size())
{
while(next<nums.size()&&nums[now]+1==nums[next])
{
now=next;
next++;
}
result.push_back(func(start,now,nums));
start=next;
now=next;
next++;
}
if(next==nums.size())
result.push_back(func(start,nums.size()-1,nums));
return result;
}
};