백준 - 문제집 <Python 배우기 (21~30)>

유다송·2022년 8월 24일
0

21번

A = int(input())
Operator = input()
B = int(input())

if Operator == '+':
    print(A + B)
else:
    print(A * B)

22번

s = int(input())

if 90 <= s <= 100:
    print('A')
elif 80 <= s <= 89:
    print('B')
elif 70 <= s <= 79:
    print('C')
elif 60 <= s <= 69:
    print('D')
else:
    print('F')

23번

A, B, C = map(int, input().split())

if A >= B >= C:
    print(B)
elif A >= C >= B:
    print(C)
elif B >= A >= C:
    print(A)
elif B >= C >= A:
    print(C)
elif C >= A >= B:
    print(A)
else:
    print(B)

24번

N = int(input()) #나누어지는 수
D = 2 #나누는 수(소인수)

while N!= 1:
    if N % D != 0:
        D += 1
    else:
        N //= D
        print(D)
  • N이 1이 아닌 동안 만약 N을 D로나눈 나머지가 0이 아니라면 D에 1을 더함.(D가 2로 안나누어지면 3이 됨)
  • N을 D로 나누고 다시 할당하고 D를 출력

25번

S = int(input())
N = 0
result = 0
for i in range(1, S+1):
    result += i
    N += 1
    if(result > S):
        N -= 1
        break;
print(N)
  • S까지 1씩 더해가면서 그 값을 더해주면서 그 값이 S보다 커지면 그 직전 값이 정답이 된다.

26번

Y = int(input())
if (Y % 4 == 0 and Y % 100 != 0) or Y % 400 == 0:
    print(1)
else:
    print(0)
  • 문제 그대로 4로 나눴을때 나머지가 0 이고, 100으로 나눴을때 0이 아니면 1을 출력해준다. 또는 400을 나눴을때 나머지가 0이면 1을 출력해준다. 그게 아니라면 0을 출력한다.

27번

sum = 0
for i in range(5):
    score = int(input())
    if score < 40:
        score = 40
    sum += score
print(int(sum/5))
  • sum을 변수로 선언해줌.
  • 5까지 반복문 돌려주고 sum에다가 반복을 통해 나온 값 더해줌
  • sum을 5로 나눠주고 정수형으로 바꿔줌

28번

C = int(input())

for i in range(C):
    A, B = map(int, input().split())
    num1 = A
    num2 = B
    while num2 != 0:
        temp = num1
        num1 = num2
        num2 = temp % num2
    print(A*B//num1)
  • 유클리드호제법을 이용하여 최대공약수를 구한 뒤, 최소공배수를 구한다.

29번

a, b, c = map(int, input().split())

if a == b == c:
    print(10000+ a * 1000)
elif a == b:
    print(1000 + a * 100)
elif b == c:
    print(1000 + b * 100)
elif a == c:
    print(1000 + a * 100)
else:
    print(100 * max(a, b, c))

30번

while True:
    a, b = map(int, input().split())
    if a == 0 and b == 0:
        break
    if a > b:
        print("Yes")
    else:
        print("No")

0개의 댓글