teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

修正

2020/06/23 01:25

投稿

ohys
ohys

スコア147

answer CHANGED
@@ -19,8 +19,8 @@
19
19
  bool flag = true;
20
20
  for(int i=0; i<S.size(); i++){
21
21
  if(S[i]==L[0] || S[i]==L[1] || S[i]==L[2])st.push(S[i]);
22
+ if(st.size()==0){flag=false;break;}
22
23
  char t = st.top();
23
- if(st.size()==0){flag=false;break;}
24
24
  switch(S[i]){
25
25
  case ')':if(t==L[0])st.pop(); else flag=false; break;
26
26
  case '}':if(t==L[1])st.pop(); else flag=false; break;

1

コーナーケース修正

2020/06/23 01:25

投稿

ohys
ohys

スコア147

answer CHANGED
@@ -20,6 +20,7 @@
20
20
  for(int i=0; i<S.size(); i++){
21
21
  if(S[i]==L[0] || S[i]==L[1] || S[i]==L[2])st.push(S[i]);
22
22
  char t = st.top();
23
+ if(st.size()==0){flag=false;break;}
23
24
  switch(S[i]){
24
25
  case ')':if(t==L[0])st.pop(); else flag=false; break;
25
26
  case '}':if(t==L[1])st.pop(); else flag=false; break;