제출 #154367

#제출 시각아이디문제언어결과실행 시간메모리
154367arnold518괄호 문자열 (CEOI16_match)C++14
37 / 100
2044 ms636 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int, int> pii; typedef pair<ll, ll> pll; const int MAXN = 1e5; int N; char A[MAXN+10]; char ans[MAXN+10]; int main() { int i, j; scanf("%s", A+1); N=strlen(A+1); vector<char> S; for(i=1; i<=N; i++) { if(!S.empty() && A[i]==S.back()) S.pop_back(); else S.push_back(A[i]); } if(!S.empty()) return !printf("-1"); for(i=1; i<=N; i++) { ans[i]='('; vector<char> V; for(j=1; j<=i; j++) { if(ans[j]=='(') V.push_back(A[j]); else V.pop_back(); } for(j=i+1; j<=N; j++) { if(!V.empty() && A[j]==V.back()) V.pop_back(); else V.push_back(A[j]); } if(!V.empty()) ans[i]=')'; } printf("%s", ans+1); }

컴파일 시 표준 에러 (stderr) 메시지

match.cpp: In function 'int main()':
match.cpp:18:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%s", A+1); N=strlen(A+1);
     ~~~~~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...