■77345 / inTopicNo.1) |
C++のアルゴリズムのソースコードについてです |
□投稿者/ EDF (31回)-(2015/10/10(Sat) 18:43:06)
|
分類:[C/C++]
次の問題(http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0060)を解くために次のようなソースコードを書きました。
そしてVIsual Studio C++(versionは2013)で試したところ
7以下の値の値には適切な答えを出すのですが8以上の値を入れると
Debug Assertion Failed!
プログラム名
Expression:vector iterator + offset out of range
という警告とともにプログラムが停止してしまいます。
どうしたらよいでしょうか?
ちなみにソースコードはこちらです
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
vector <int> v;
int a[4];
for (int i = 1; i <= 10; i++){
v.push_back(i);
}
cin >> a[0] >> a[1] >> a[2];
sort(a, a + 3);
for (int i = 0; i < 3; i++)
v.erase(v.begin() + a[i] - i - 1);
if (a[0] + a[1] + v[3] <= 20)cout << "YES" << endl;
else cout << "NO" << endl;
}
|
|