前提
AtCoderの典型問題90の010(★2)を解いていましたが、自分のプログラミングのどこに間違いがあるがわかりません。「https://atcoder.jp/contests/typical90/tasks/typical90_j」
実現したいこと
WAになる理由を教えていただきたいです。
該当のソースコード
C++
1#include <bits/stdc++.h> 2using namespace std; 3 4int main(){ 5 int N; 6 vector<vector<int>> data(1000009, vector<int>(2)); 7 cin >> N; 8 for(int i = 1; i <= N; i++){ 9 cin >> data[i][1] >> data[i][2]; 10 } 11 int n; 12 cin >> n; 13 int ans1, ans2; 14 int first, last; 15 16 for(int i = 0; i < n; i++){ 17 cin >> first >> last; 18 for(int j = first; j <= last; j++) { 19 if(data[j][1] == 1){ 20 ans1 += data[j][2]; 21 }else if(data[j][1] == 2){ 22 ans2 += data[j][2]; 23 } 24 } 25 cout << ans1 << " " << ans2 << endl; 26 } 27}
試したこと
模範解答のソースコードを見ました。
c++ のご質問でしたら、c のタグは外していただけますか。
問題文に付いている入力例を入力した場合は全て出力例通りになったのでしょうか。
例は動作しているとして、 N, Q が最大の時に 2 秒以内で処理が終わるでしょうか。