프론트엔드 개발자 중규리 입니다 ദി ᷇ᵕ ᷆ ) 자세히보기

PS/문제풀이

백준 18429 근손실 Python

중규리 2024. 1. 15. 16:07

🐸 문제 정보

 

18429번: 근손실

웨이트 트레이닝을 좋아하는 어떤 대학원생은, 현재 3대 운동 중량 500의 괴력을 소유하고 있다. 다만, 하루가 지날 때마다 중량이 K만큼 감소한다. 예를 들어 K=4일 때, 3일이 지나면 중량이 488로

www.acmicpc.net

 

🤖 알고리즘

브루트포스

 

⏱️ 풀이 시간

11.23m

 

📝 풀이

으악 처음에 순열을 구하면서 n이 아닌 예제처럼 3을 넣어놓고.. 왜안되지 하고 있었다.

간단하게 순열을 구해서 모두 검사하면 되는 문제였다.

python의 itertools를 사용하면 아주 쉽게 풀 수 있었다.

 

🧑‍💻 나의 답

# pypy3

import sys
from itertools import permutations
input = sys.stdin.readline

n, k = list(map(int, input().rstrip().split()))
kits = list(permutations(list(map(int, input().rstrip().split())), n))

res = len(kits)
for kit in kits:
    temp = 500
    for per in kit:
        temp += per - k
        if temp < 500:
            res -= 1
            break

print(res)