프로그래밍/python

Python 백준 알고리즘 2753번 윤년, 2884 알람 문제풀기

싯타마 2020. 9. 7. 20:32

if 문을 활용한 윤년 문제 풀기

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

 

조건: 4의배수이면서 100의 배수는 아닌 것 또는 400의 배수이면 윤년이다.

 

따라서 if 문에 위 조건을 입력하면 된다.

입력받은 값을 4로 나눈뒤 나머지가 0이면 4의 배수이다. 같은 방식으로 입력받은 값을 100으로 나누었을 때 나머지가 0이 아니면 100의 배수가 아니다.

 

*참고사항

a%b: 나머지 값 구하는 함수

a != b : a는 b가 아니다.

and : 그리고

or: 또는  

 

결과

 

 

if문을 활용한 알람 문제 풀기

 

H,M = map(int , input().split(" "))

if M > 44:
    print(H,M-45);
elif M < 45 and H > 0 :
    print(H-1,M+15)
else :
    print(23,M+15)

 

먼저 시인 H와 분인 M을 입력받는다. 이때 공백으로 구분할 것이기 때문에. split(" ")을 붙여주고 map을 통해 두 변수를 int로 형 변환해준다.

 

그 후 3가지 상황

1. 분이 44보다 클 때는 분에 45분을 빼서 출력해주면 된다.

2. 분이 45보다 작을 때 시보다 클 때 그리고 시가 0보다 클때 : 시간을 1 빼고 60분에 45를 뺀 값인 15를 분에 더 해주면 된다.

3. H가 0일 때 : H는 23으로 고정됨으로 23으로 출력하고 60분에 45를 뺀 값인 15를 분에 더해준다.

 

결과