반응형
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
' ( ', ' ) ' 두개의 문자로 이루어진 문자열을 입력 받을 때, 문자열로 그려진 괄호가 올바른 괄호인지 체크해주세요.
풀이 방법
괄호 하나는 열고 닫기, 한번 씩만 할 수 있습니다. 즉 올바른 괄호는 ' ( ' 와 ' ) '의 개수가 동일합니다.
개수가 동일하다고 해도 올바르지 않은 괄호일 수 있습니다. " ( ) ) ( "
해결 방법은 지금까지 연 괄호의 개수를 기록하는 것 입니다. 괄호를 열었다면 ++, 닫았다면 --
예시 " ( ) ) ( " => 1, 0, -1, 0
만약 열려 있는 괄호 보다 더 많이 닫았다면 옳지 않은 괄호이며
마지막에 열려있는 괄호의 수가 0이라면 옳은 괄호가 되겠습니다.
#include<string>
#include <iostream>
using namespace std;
bool solution(string s)
{
int cnt = 0;
for (char c : s)
{
if (c == '(')
cnt++;
else if (c == ')')
cnt--;
if (cnt < 0)
return false;
}
return cnt == 0;
}
반응형
LIST
'알고리즘 문제 > 프로그래머스' 카테고리의 다른 글
프로그래머스 업그레이드 된 아이템 구하기 [Lv. 2] (MySQL) (0) | 2024.10.21 |
---|---|
프로그래머스 당구 연습 [Lv. 2] (C++) (0) | 2024.10.21 |
프로그래머스 연도별 대장균 크기의 편차 구하기 [Lv. 2] (MySQL) (0) | 2024.10.17 |
프로그래머스 조건에 맞는 개발자 찾기 [Lv. 2] (MySQL) (1) | 2024.10.16 |
프로그래머스 부모의 형질을 모두 가지는 대장균 찾기 [Lv. 2] (MySQL) (0) | 2024.10.16 |