[프로그래머스] Level1, 실패율 (Python)

2021. 6. 17. 19:10·알고리즘/프로그래머스
728x90
반응형

문제

https://programmers.co.kr/learn/courses/30/lessons/42889?language=python3 

 

코딩테스트 연습 - 실패율

실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스

programmers.co.kr

 

코드

def solution(N, stages):
    answer = []
    leng = len(stages)
    d = {}
    for i in range(1,N+1):
        count = stages.count(i) # i스테이지를 못깬 인원수
        if leng == 0:
            d[i] = 0
        else:
            d[i] = (count / leng)
            leng -= count # 못깬 인원수를 빼준다
    answer= sorted(d, key=lambda x : d[x], reverse=True)
    return answer

딕셔너리를 이용하여 인덱스 값과 실패율을 같이 저장한다음 lambda를 이용행 value값(실패율)으로 내림차순 정렬해 key값(인덱스)를 출력해주면 된다.

 

일단 실패율을 구하기 위해서 stages를 for문으로 돌아 1인 수를 찾는다고 했을때 1인수가 2개가 있다면 1스테이지를 못깬 사람이 2명 있다는 뜻이다. 그래서 총인원수 leng으로 나누면 실패율을 구할 수 있다.

 

실패율을 구한 다음에는 총인원수에서 실패한 인원들을 뺴준값으로 계속 진행한다. (leng -= count)

 

실패율을 선언해준 딕셔너리 d에 계속 넣어준 뒤 정렬을 시켜주면 된다.

반응형
저작자표시 (새창열림)

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[프로그래머스] Level1, 로또의 최고 순위와 최저 순위 (Python)  (0) 2021.06.18
[프로그래머스] Level1, 1차 비밀지도 (Python)  (0) 2021.06.18
[프로그래머스] Level1, 키패드 누르기 (Python)  (0) 2021.06.17
[프로그래머스] Level2, 3차 압축 (Python)  (0) 2021.06.16
[프로그래머스] Level2, 3차 파일명 정렬 (Python)  (0) 2021.06.16
'알고리즘/프로그래머스' 카테고리의 다른 글
  • [프로그래머스] Level1, 로또의 최고 순위와 최저 순위 (Python)
  • [프로그래머스] Level1, 1차 비밀지도 (Python)
  • [프로그래머스] Level1, 키패드 누르기 (Python)
  • [프로그래머스] Level2, 3차 압축 (Python)
wookcode
wookcode
공부한 내용들을 정리하고 기록하는 블로그입니다.
    반응형
  • wookcode
    wookcode
    wookcode
  • 전체
    오늘
    어제
    • 카테고리 (196) N
      • study (1) N
        • 아파치 카프카 애플리케이션 프로그래밍 with 자.. (0)
        • 인프런 (1) N
      • Live Study (15)
      • Programming (14)
        • Java (8)
        • Python (1)
        • Springboot (5)
        • MSA (0)
      • 알고리즘 (117)
        • 백준 (58)
        • 프로그래머스 (59)
      • 에러로그 (5)
      • 항해99 (23)
      • 면접 (1)
      • 프로젝트 (1)
      • CS (19)
        • 네트워크 (2)
        • 운영체제 (2)
        • 데이터베이스 (2)
        • 컴퓨터구조 (1)
        • Java (8)
        • Spring (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    김영한
    java
    후기
    실전프로젝트
    조합
    파이썬
    백준
    카카오코딩테스트
    해결
    알고리즘
    정리
    항해99
    회고
    브루트포스
    에러
    jpa
    미니프로젝트
    그리디
    프로그래머스
    카카오인턴
    인프런
    SFlash
    괄호
    코딩테스트
    spring
    버그
    orm
    SpringBoot
    스파르타코딩클럽
    항해마켓
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
wookcode
[프로그래머스] Level1, 실패율 (Python)
상단으로

티스토리툴바