[BOJ]1924|2007年


1924|2007年
https://www.acmicpc.net/problem/1924


マイコード

x, y = map(int, input().split())

day = ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT']
dict = {1:31, 2:28, 3:31, 4:30, 5:31, 6:30, 7:31, 8:31, 9:30, 10:31, 11:30, 12:31}
days = 0

for mon in range(1, x):
    days += dict[mon]

days += y

print(day[days%7])

例外コード

months = [0, 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5]
days = ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT']
a, b = map(int,input().split())
print(days[(b + months[a]) % 7])

勉強する


  • ウォルは必ずしもディック・シャナリーになる必要はない.インデックスは配列からアクセスできます

  • daysを配列として宣言するのはよくできています.共通値は配列アクセスが容易です

  • 上記のコードで毎月1回の月チェックを使用することで、for文を迂回することなくこの問題を解決できます.