기능개발

sezeom·2021년 5월 11일
0

코테준비

목록 보기
69/85

프로그래머스_기능개발

Counter로 원소의 개수 알아내기
반환값은 key value의 딕셔너리 형태
값만 빼고 싶다면 for문을 돌려서 .items()로 가능

처음 풀이

import math
from collections import Counter

def solution(progresses, speeds):
    answer = []
    day = []

    for i in range(len(progresses)):
        day.append(math.ceil((100-progresses[i])/speeds[i]))
        
    for i in range(len(day)-1):
        if (day[i] > day[i+1]):
            day[i+1] = day[i]

    day2 = Counter(day)
    for k,v in day2.items():
        answer.append(v)

    return answer

zip, 조건문으로 for문 하나에서 해결

import math
from collections import Counter

def solution(progresses, speeds):
    answer = []
    days = []
    
    for p,s in zip(progresses, speeds):
        day = math.ceil((100-p)/s)
        if len(days)!=0 and day<days[-1]:
            days.append(days[-1])
        else:
            days.append(day)

    days = Counter(days)
    for k,v in days.items():
        answer.append(v)
        
    return answer
profile
growth, achievement and success🌱

관심 있을 만한 포스트

0개의 댓글