프로그래밍/백준

[알고리즘] 백준 6502 파이썬 - 동혁 피자

매 석 2023. 3. 6. 21:40
반응형

 

 

6502번: 동혁 피자

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 숫자 세 개로 이루어져 있고, 순서대로 r, w, l이다. r은 식탁의 반지름이고, w와 l은 피자의 너비와 높이이다. (1 ≤ r ≤ 1000

www.acmicpc.net

문제

대전 ACM-ICPC Regional가 끝나면, 대회 참가자들은 다같이 카이스트 근처의 동혁 피자에 간다. 대회는 5시간동안 진행되므로, 참가자는 모두 배가 매우 고프다. 피자를 최대한 빨리 먹기 위해서, 큰 피자를 하나 시키려고 한다. 생각해보니 피자가 너무 크면 식탁 위에 맞지 않을 수도 있다. 식탁은 원이고, 피자는 직사각형이다. 식탁의 반지름과 피자의 크기가 주어졌을 때, 피자가 식탁에 맞는 크기인지 아닌지를 구하는 프로그램을 작성하시오.

 

문제풀이

i=1
while True:
    List=list(map(int,input().split()))
    #01
    if List[0]==0:
        break
    r,w,l=List
    #02
    x=(w/2)**2+(l/2)**2
    if r**2>=x:
        print("Pizza "+str(i)+" fits on the table.")
    else:
        print("Pizza "+str(i)+" does not fit on the table.")
    i+=1

- #01 : List 값 중에 첫 번째 값이 0이면 while문을 종료한다.

- #02 : x라는 값, 즉 w와 l으로 피타고라스 정리를 사용해 대각선 값을 구한다.

           그 값이 r보다 작으면 테이블 위에 피자를 놓을 수 없고,

           그 값보다 r이 크거나 같으면 테이블 위에 피자를 놓을 수 있다.