C++ 中的运行时错误
Runtime Error in C++
我是 运行 这个程序在 codeblocks 上运行良好,但在在线判断中它给出了相同输入的运行时错误。
我无法弄清楚这个错误的原因。
vector<int> twoSum(vector<int> &numbers, int target)
{
vector<int> c ;
sort(numbers.begin(),numbers.end()-1);
vector<int>::iterator i = numbers.begin();
vector<int>::iterator j = numbers.end()-1;
while(i<=j)
{
int sum = *i + *j;
if(sum==target)
{ c.push_back(i-numbers.begin());
c.push_back(j-numbers.begin());
//cout<<*i<<" "<<*j<<endl;
break;
}
else if(sum<target) i++;
else j--;
}
return c;
}
sort(numbers.begin(),numbers.end()-1);
在空 numbers
向量上调用它会导致运行时错误。应该是sort(numbers.begin(), numbers.end());
我是 运行 这个程序在 codeblocks 上运行良好,但在在线判断中它给出了相同输入的运行时错误。 我无法弄清楚这个错误的原因。
vector<int> twoSum(vector<int> &numbers, int target)
{
vector<int> c ;
sort(numbers.begin(),numbers.end()-1);
vector<int>::iterator i = numbers.begin();
vector<int>::iterator j = numbers.end()-1;
while(i<=j)
{
int sum = *i + *j;
if(sum==target)
{ c.push_back(i-numbers.begin());
c.push_back(j-numbers.begin());
//cout<<*i<<" "<<*j<<endl;
break;
}
else if(sum<target) i++;
else j--;
}
return c;
}
sort(numbers.begin(),numbers.end()-1);
在空 numbers
向量上调用它会导致运行时错误。应该是sort(numbers.begin(), numbers.end());