-
比较简单的一道题目
#include
#include
#include
using namespace std;
vector MissingRanges(vector &vec)
{
vector res;vec.insert(vec.begin(), 0);
for (int i = 1; i < vec.size(); i++)
{
int a = vec[i - 1];
int b = vec[i];
string tempres = “”;
int start = vec[i - 1] + 1;
int end = vec[i] - 1;
if (start == end && start!=-1)
{
tempres = tempres+to_string(start);
res.push_back(tempres);
}
else if (start < end)
{
tempres = tempres + to_string(start);
tempres = tempres + “->”;
tempres = tempres + to_string(end);
res.push_back(tempres);
}
else
{
continue;
}
}
if (vec[vec.size() - 1] != 99)
{
string tempres = “”;
tempres = tempres+to_string(vec[vec.size() - 1]+1);
tempres = tempres + “->”;
tempres = tempres + to_string(99);
res.push_back(tempres);
}
return res;
}
int main()
{
vector vec{ 0,1,3,50,75 };
vector strvec=MissingRanges(vec);
for (auto str : strvec)
{
cout << str << " ";
}
cout << endl;
system(“pause”);
return 0;
}