inblog logo
|
LHS's Study Space
    알고리즘문제풀기C#

    [알고리즘 문제 풀기] 소를 찾아라(5874)

    C#
    lhs's avatar
    lhs
    Apr 02, 2025
    [알고리즘 문제 풀기] 소를 찾아라(5874)
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리
    www.acmicpc.net
    https://www.acmicpc.net/problem/5874
    notion image

    1. 문제 풀이 아이디어

    • 연속된 같은 괄호가 나오는 경우만 고려하여 (의 개수를 세고, )를 만날 때마다 앞서 등장한 (의 개수를 더하여 문제를 해결할 수 있다.

    2. 나의 정답 코드

    using (StreamReader sr = new StreamReader(Console.OpenStandardInput())) using (StreamWriter sw = new StreamWriter(Console.OpenStandardOutput())) { string line = sr.ReadLine(); int left = 0; int result = 0; for (int i = 0; i < line.Length - 1; i++) { if (line[i] != line[i + 1]) continue; if (line[i] == '(') left++; else result += left; } sw.WriteLine(result); }

    3. 정리

    • (가 연속으로 등장하면 개수를 증가시킨다.
    • )가 연속으로 등장하면 앞서 등장한 (의 개수를 결과에 더한다.
    • 최종적으로 결과 값을 출력해 문제를 해결한다.
    Share article
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리

    LHS's Study Space

    RSS·Powered by Inblog