백준_1476 (날짜 계산_실버5)

RostoryT·2022년 6월 27일
0

Brute force

목록 보기
3/18

1차 시도

메모

  • 총 3개 변수로 연도 나타냄

    • 지구 E (1~15)
    • 태양 S (1~28)
    • 달 M (1~19)
  • 우리의 1년 = 1 1 1

    • 1년이 지날 때마다 세 수가 모두 1씩 증가 (2 2 2)
    • 15년은 (15 15 15)
  • 그러나 각 범위가 넘어갈 때에만 다시 1이 됨

    • 16년은 (1 16 16)
  • 내가 할거 : 이상한 연도 => 우리 연도 변환

아이디어

걍 while 1부터 각각 병렬로 += 1 시키고
year에도 += 1

if E == 1 and S == 2 and M == 3:
print(year)
break

하면 되는거 아니냐

시간복잡도

O(n)일 듯?

변수

같이 counting할 int year


코드

  • 아이디어부터 코딩까지 20분 컷 (But 쉬운문제였음ㅜ)
x, y, z = map(int, input().split())
year = 0

e, s, m = 0, 0, 0

while 1:
    year += 1
    e = e + 1 if e < 15 else 1
    s = s + 1 if s < 28 else 1
    m = m + 1 if m < 19 else 1
    
    if e == x and s == y and m == z:
        print(year)
        break




참고 - 프로세스

profile
Do My Best

0개의 댓글