본문 바로가기
알고리즘/완전탐색

[백준][Python] 14697번 방 배정하기

by 임짠짠 2022. 7. 13.
반응형
 

14697번: 방 배정하기

정보 초등학교 6학년 여학생들은 단체로 2박 3일 수학여행을 가기로 했다. 학생들이 묵을 숙소에는 방의 정원(방 안에 있는 침대 수)을 기준으로 세 종류의 방이 있으며, 같은 종류의 방들이 여러

www.acmicpc.net

 

 

 

코드

a,b,c,student = map(int,input().split())
flag = 0
for i in range(student//a + 1):
	for j in range(student//b + 1):
		for k in range(student//c + 1):
			if a*i + b*j + c*k == student:
				flag = 1
				break

if flag == 1:
	print(1)
else:
	print(0)

 

설명

정원이 a명인 방은 (학생수) // a개보다 많으면 학생수를 초과하기 떄문에 for문의 범위를 (student//a + 1)로 했다. 나머지도 마찬가지다. 삼중 for문을 통해 학생 수와 완전히 일치하는 경우가 존재하면 flag 값을 1로 바꿔준다. 

for문을 빠져나왔을 때 flag 값이 1인 경우 1을 출력해주고 flag 값이 0인 경우 0을 출력해준다.

반응형

댓글