백준 온라인 코딩 문제풀이
Baekjoon Online Judge
Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.
www.acmicpc.net
최근에 C++ 공부를 C#으로 백준을 푼 뒤 그걸 생성형 AI를 사용해 C++로 바꿔서 공부하는 방식으로 진행해보려고 한다.
실버 4 괄호 문제이다.

우선 받을 줄 수를 입력 받고 열은 괄호의 갯수가 닫은 괄호의 갯수보다 적으면 NO 같으면 YES를 출력해야하는 문제이다.

예제 입력과 출력을 통해 알 수 있는 사실은 열은 괄호나 닫은 괄호만 있는 경우에는 성립하지 않는다.
개인적으로는 이 문제를 접근하기에 열은 괄호의 갯수를 카운트해서 닫은 괄호의 갯수만큼 카운트에서 빼는 방식으로 설계하였다.
또한 이 과정에서 카운트가 음수가 되는 경우는 열은 괄호보다 닫은 괄호의 수가 더 많다는 의미이기 때문에 음수가 되는 즉시 NO로 판정되게 하였다.
구현
더보기
using System;
using System.Linq;
using System.Collections.Generic;
namespace StudyCS
{
class Program
{
public static void Main(string[] args)
{
int inputCnt = int.Parse(Console.ReadLine());
string[] inputText = new string[inputCnt];
for (int i = 0; i < inputCnt; i++)
{
inputText[i] = Console.ReadLine();
}
for (int i = 0; i < inputCnt; i++)
{
int textLength = inputText[i].Length;
int cnt = 0;
for (int j = 0; j < textLength; j++)
{
if (inputText[i][j] == '(')
cnt++;
if (inputText[i][j] == ')')
cnt--;
if (cnt < 0)
break;
}
if (cnt == 0)
Console.WriteLine("YES");
else
Console.WriteLine("NO");
}
}
}
}
'BaekJoon' 카테고리의 다른 글
| Greedy Algorithm - 11399 (0) | 2025.03.27 |
|---|---|
| Dynamic Programing - 1463 (0) | 2025.03.26 |
| 백준 24313 알고리즘 수업 - 점근적 표기 (0) | 2023.12.06 |
| 백준 10988, 9506 (0) | 2023.12.05 |
| 조건문 단계, 반복문 단계 2525, 1110 (0) | 2023.01.18 |