python study - beakjoon 문제풀기02 - 조건문



백준 홈페이지 - 문제 - 단계별로 풀어보기 중 2. 조건문 문제와 내가 쓴 답들

1330번 문제
if 함수를 쓸줄만 알면 된다.

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

if a > b:
    print('>')
elif a < b:
    print('<')
else:
    print('==')

9498 문제
그냥 두번 써도 되지만 *2를 쓰면 같은 내용을 두번 출력이 가능하다

a = int(input())

if a >= 90:
    print("A")
elif a >= 80:
    print("B")
elif a >= 70:
    print("C")
elif a >= 60:
    print("D")
else:
    print("F")
숏코딩
'' 안 내용을 배열로 인식한다음 [ ]안의 숫자가 배열의 Index이다. index에 해당하는 문자열을 찾아 출력해준다
int(input()) 값이 100이면 100 나누기 10의 몫은 10이므로 FFFFFFDCBAA[10] = 11번째 문자 A를 출력하게 된다.
print('FFFFFFDCBAA'[int(input())//10])

2753번 문제
조건 두개이상 걸기

a = int(input())


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

14681번 문제

a = int(input())
b = int(input())

if a > 0 and b > 0:
	print(1)

elif a > 0 and b < 0:
	print(4)
elif a < 0 and b > 0:
	print(2)
else:
	print(3)

2884번 문제
if 문만 쓰고도 풀수 있는 문제이긴하지만 진짜 시간을 계산하도록 짜봤다

import datetime

h, m = map(int, input().split())
time = datetime.timedelta(hours=h, minutes=m)
alarm = time - datetime.timedelta(minutes=45)

seconds = datetime.timedelta.total_seconds(alarm) % (3600*24)

print(int(seconds//3600), int(seconds / 60 % 60))

2525번 문제
위 문제와 유사하다

import datetime

h, m = map(int, input().split())
cock = int(input())

time = datetime.timedelta(hours=h, minutes=m)
alarm = time + datetime.timedelta(minutes=cock)
seconds = datetime.timedelta.total_seconds(alarm) % (3600*24)

print(int(seconds//3600), int(seconds / 60 % 60))

2480번 문제
리스트와 정렬, loop를 if와 같이 활용했다

a, b, c = map(int, input().split())
numbers = [a, b, c]
numbers.sort(reverse=True)

duplist = []
newlist = []

for i in numbers:
    if i not in newlist:
        newlist.append(i)
    else:
        duplist.append(i)

if len(newlist) == 1:
    print(duplist[0] * 1000 + 10000)
elif len(newlist) == 2:
    print(duplist[0] * 100 + 1000)
else:
    print(numbers[0]*100)

댓글 쓰기

0 댓글