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

    [알고리즘 문제 풀기] 날짜 계산(1476)

    C#
    lhs's avatar
    lhs
    Feb 10, 2025
    [알고리즘 문제 풀기] 날짜 계산(1476)
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리
    www.acmicpc.net
    https://www.acmicpc.net/problem/1476
    notion image

    1. 문제 풀이 아이디어

    • 세 개의 값(E, S, M)이 주어진 범위를 반복하며 1씩 증가시키면서 조건을 만족하는 최소 연도를 찾아 문제를 해결한다.

    2. 나의 정답 코드

    using (StreamReader sr = new StreamReader(Console.OpenStandardInput())) using (StreamWriter sw = new StreamWriter(Console.OpenStandardOutput())) { int[] esm = Array.ConvertAll(sr.ReadLine().Split(), int.Parse); int e = 1; int s = 1; int m = 1; int result = 1; while (e != esm[0] || s != esm[1] || m != esm[2]) { e = ++e > 15 ? 1 : e; s = ++s > 28 ? 1 : s; m = ++m > 19 ? 1 : m; result++; } sw.WriteLine(result); }

    3. 정리

    • sr.ReadLine().Split()로 입력값을 공백 기준으로 나눈 후 int.Parse를 사용해 정수 배열로 변환한다.
    • e, s, m을 각각 1로 초기화하고, result를 1부터 시작한다.
    • while 루프에서 e, s, m이 입력값과 일치할 때까지 반복한다.
    • e, s, m을 각각 1씩 증가시키되, 각 값이 초과하면 다시 1로 순환하도록 한다.
    • 조건을 만족하면 result 값을 출력한다.
    Share article

    LHS's Study Space

    RSS·Powered by Inblog