괄호가 입력되면 올바른 괄호이면 “YES", 올바르지 않으면 ”NO"를 출력한다.
()의 법칙을 생각하자. )가 먼저 나올수 없고 )의 숫자가 더 많을 수 없다.
미리 머리속에 그려보자.
힌트 : 숫자를 기준으로 생각하자.
법칙을 생각해보자.
#include <stdio.h>
using namespace std;
int main(int argc, char** argv) {
//freopen("input.txt", "rt", stdin);
char a[30];
gets(a);
int p = 0;
int p2 = 0;
bool b = true;
for (int i = 0; a[i] != '\0'; i++) {
if(a[i]==40){
p++;
}else if(a[i]==41){
p--;
}
if(p < 0){
break;
}
}
if(p == 0){
printf("%s","YES");
}else{
printf("%s","NO");
}
return 0;
}
'개발 소발 > 개발 알고리즘' 카테고리의 다른 글
알고리즘 - 뒤집은 소수 C++ 구현 (0) | 2019.09.06 |
---|---|
알고리즘 - 자릿수의 합 C++ 구현 (0) | 2019.09.06 |
알고리즘 - 영어단어 복구 C++구현 (0) | 2019.09.04 |
알고리즘 - 숫자만 추출 c++구현 (0) | 2019.09.04 |
알고리즘 - 진약수의 합 C++ 구현 (0) | 2019.09.04 |