나의 풀이
def solution(k, m, score):
#내림차순으로 정렬
score.sort(reverse=True)
#score에서 최대 점수 보다 큰 점수를 담기위한 remove Set
remove_set =set()
for i in score:
if i > k: #최대점수
remove_set.add(i)
#특정요소를 제거한 score 리스트
score = [i for i in score if i not in remove_set]
sum=0
#1차원 리스트를 m개씩 슬라이싱한다.
for i in range(0, len(score), m):
new_box=score[i:i+m]
if len(new_box)==m:
sum+=min(new_box)*m
return sum
다른 사람의 풀이
def solution(k, m, score):
answer = 0
score.sort(reverse=True)
apple_box = []
for i in range(0, len(score), m):
apple_box.append(score[i:i+m])
for apple in apple_box:
if len(apple) == m:
answer += min(apple) * m
return answer
'프로그래머스(파이썬) > LV.1(파이썬)' 카테고리의 다른 글
키패드 누르기→매개변수로 값주기, 현재값, next값★ (0) | 2022.12.20 |
---|---|
숫자 짝꿍 → 일치 + count() + min(a,b) + len(answer) == a.count('0')★★ + 모든 요소가 0인 경우 (0) | 2022.12.20 |
가장 가까운 글자→ 다중 index를 이용★★ (0) | 2022.12.20 |
완주하지 못한 선수→ Hash 또는 Counter함수 (0) | 2022.12.19 |
다트 게임→ 정규식, findall(), recompile() + 스택을 표방한 리스트 (0) | 2022.12.19 |