앞날창창이승경 개발 블로그
[백준/python/파이썬] #22993 서든어택 3 본문
22993번: 서든어택 3
좋은 전투 순서가 존재해서 준원이만 생존하고 나머지 플레이어가 모두 죽게 만들 수 있다면 Yes를, 반대로 전투가 어떤 순서로 이루어져도 준원이가 절대 최후의 생존자가 될 수 없다면 No를
www.acmicpc.net
CODE
n = int(input())
arr = list(map(int,input().split()))
def sudden() :
jun = arr.pop(0)
arr.sort()
for i in arr :
if jun > i :
jun += i
else :
return "No"
return "Yes"
print(sudden())
설명
- 준원이를 포함한 플레이어의 수를 입력받습니다.
- 각 플레이어의 공격력을 입력받습니다.
- 함수를 생성합니다.
- 변수에 준원이의 공격력을 pop 함수를 통해 선언하고 입력받은 각 플레이어의 공격력 변수에서 준원이의 공격력을 뺍니다.
- 준원이가 가장 좋은 전투 순서를 통해 생존하기 위해 각 플레이어의 공격력을 오름차순으로 정렬합니다. (공격력이 약한 상대부터 차례대로 죽이는 것이 가장 쉬운 전투 순서이기 때문입니다.)
- 반복문을 돌면서 준원이의 공격력보다 다른 플레이어의 공격력이 높거나 같으면 준원이는 최후의 생존자가 될 수 없으므로 "No"를 반환합니다.
- 반복문을 다 돌면 준원이가 최후의 생존자라는 것이므로 "Yes"를 반환합니다.
- 함수의 반환값을 출력합니다.
감사합니다.
'백준(BOJ)' 카테고리의 다른 글
[백준/python/파이썬] #9012 괄호 (0) | 2022.01.17 |
---|---|
[백준/python/파이썬] #2839 설탕 배달 (0) | 2021.08.17 |
[백준/python/파이썬] #4673 셀프 넘버 (0) | 2021.08.02 |
[백준/python/파이썬] #7568 덩치 (1) | 2021.02.27 |
Comments