본문 바로가기
Algorithm/BAEKJOON

[BAEKJOON] 단계별로 풀어보기 2. 조건문

by noey_hus 2022. 9. 9.

https://www.acmicpc.net/step/4

 

조건문 단계

점이 어느 사분면에 있는지 알아내는 문제

www.acmicpc.net

# 1330 : 두 수 비교하기

a, b = map(int, input().split())
if a > b:
  print(">")
elif a < b:
  print("<")
else:
  print("==")

# 9498 : 시험 성적

num = int(input())
if num >= 90:
  print("A")
elif num >= 80:
  print("B")
elif num >= 70:
  print("C")
elif num >= 60:
  print("D")
else:
  print("F")

첫 번째 if문에서 이미 90점 이상인 사람들이 모두 걸러지기 때문에 두 번째 if문에서 B 출력에 대한 조건문으로 num >= 80 and num < 90 이라고 작성하지 않아도 됨.


# 2753 : 윤년

year = int(input())
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
  print(1)
else:
  print(0)

# 14681 : 사분면 고르기

x = int(input())
y = int(input())
if x > 0:
  if y > 0:
    print(1)
  else:
    print(4)
else:
  if y > 0:
    print(2)
  else:
    print(3)

# 2884 : 알람 시계

H, M = map(int, input().split())
if M >= 45:
  print(H, +M-45)
else:
  if H != 0:
    print(H-1, 60-(45-M))
  else:
    print(23, 60-(45-M))

일단 분(M)에서 45를 뺐을 때 그 값이 양수인지 음수인지 구별해야함 (이 코드에서는 분(M)이 45보다 큰지 작은지로 판별). 여기서 음수일 경우, 0시일 때는 45분 전이 (0 - 1)시가 아니라 23시이기 때문에 이를 고려하여 조건문을 작성해주어야함.


# 2525 : 오븐 시계

H, M = map(int, input().split())
C = int(input())
if M+C < 60:
  print(H, M+C)
else:
  add_H = (M+C)//60
  new_H = H + add_H
  new_M = (M+C)%60
  if new_H >= 24:
    print(new_H-24, new_M)
  else:
    print(new_H, new_M)

# 2480 : 주사위 세개

a, b, c = map(int, input().split())
if a == b and b == c and c == a:
  print(10000+a*1000)
elif a != b and b != c and c != a:
  num = max(a, b, c)
  print(num*100)
elif a == b:
  print(1000+a*100)
elif b == c:
  print(1000+b*100)
else:
  print(1000+c*100)

가장 고려하기 쉬운 같은 눈이 3개 나올 경우모두 다른 눈이 나올 경우를 조건문으로 작성. 그 이후 a, b, c 중 각각 같은 쌍이 나오는 경우를 조건문을 이용하여 작성.