前提・実現したいこと
AOJでスタックについての問題がREとなってしまいます。
発生している問題・エラーメッセージ
timeout: the monitored command dumped core 0.00user 0.00system 0:00.00elapsed 33%CPU (0avgtext+0avgdata 3328maxresident)k 0inputs+8outputs (0major+243minor)pagefaults 0swaps
該当のソースコード
C++
1#include <bits/stdc++.h> 2using namespace std; 3 4 5int main(){ 6 stack<int> s; 7 string input; 8 cin >> input; 9 s.push(stoi(input)); 10 int temp; 11 while (scanf("%s", input) != EOF) { 12 cin >> input; 13 if (input[0] == '+'){ 14 temp = s.top(); 15 s.pop(); 16 temp += s.top(); 17 s.pop(); 18 s.push(temp); 19 } 20 else if (input[0] == '-'){ 21 temp = -1 * s.top(); 22 s.pop(); 23 temp += s.top(); 24 s.pop(); 25 s.push(temp); 26 } 27 else if (input[0] == '*'){ 28 temp = s.top(); 29 s.pop(); 30 temp *= s.top(); 31 s.pop(); 32 s.push(temp); 33 } 34 else { 35 s.push(stoi(input)); 36 } 37 } 38 cout << s.top() << endl; 39}
試したこと
AtCoderで以下の入力でコードテストをしたところ、正確に動作しています。
1 2 + 5 4 + * 1 2 + 1 2 + 3 4 - *
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/14 17:39