이 영역을 누르면 첫 페이지로 이동
자라자 블로그의 첫 페이지로 이동

자라자

페이지 맨 위로 올라가기

[프로그래머스] 다단계 칫솔 판매 파이썬

자라자

[프로그래머스] 다단계 칫솔 판매 파이썬

  • 2021.11.11 19:16
  • PS/Programmers

프로그래머스로고

[문제 링크]

https://programmers.co.kr/learn/courses/30/lessons/77486

[입출력 예]

enroll referral seller amount result
["john", "mary", "edward", "sam", "emily", "jaimie", "tod", "young"] ["-", "-", "mary", "edward", "mary", "mary", "jaimie", "edward"] ["young", "john", "tod", "emily", "mary"] [12, 4, 2, 5, 10] [360, 958, 108, 0, 450, 18, 180, 1080]
["john", "mary", "edward", "sam", "emily", "jaimie", "tod", "young"] ["-", "-", "mary", "edward", "mary", "mary", "jaimie", "edward"] ["sam", "emily", "jaimie", "edward"] [2, 3, 5, 4] [0, 110, 378, 180, 270, 450, 0, 0]

[소스코드]

def solution(enroll, referral, seller, amount):
# 정답 배열 설정
answer = [0]*len(enroll)
idx_list={}
for idx,name in enumerate(enroll):
idx_list[name]=idx #idx_list = {"john":0, ....}
# 이제 인덱스가 있기 때문에 인덱스로 부모 조회가 가능하다.
# 트리를 아예 새로 짜는 게 아니라 부모를 조회하는 방법만 알면 된다.
for idx,name in enumerate(seller):
price=100*amount[idx]
answer[idx_list[name]]+=price #일단 price를 온전히 더함
while referral[idx_list[name]]!="-": #루트 노드 나올때까지
answer[idx_list[name]]-=price//10 # 10%감축,
name=referral[idx_list[name]] # name을 부모의 name으로 바꿈.
answer[idx_list[name]]+=price//10 #부모에게 10%더함
price=price//10 # price를 10%로 재정의
if price==0:
break
answer[idx_list[name]]-=price//10 # 마지막에 price를 90%로 적용시켜줘야함.
return answer

'PS > Programmers' 카테고리의 다른 글

[프로그래머스] N으로 표현 파이썬 풀이  (0) 2021.11.25
[프로그래머스] 자물쇠와 열쇠 파이썬  (0) 2021.11.11
프로그래머스_정수삼각형  (0) 2021.10.20
[프로그래머스] 입국심사 파이썬 풀이  (0) 2021.10.18
프로그래머스_추석트래픽  (0) 2021.10.14

댓글

댓글을 사용할 수 없습니다.

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • [프로그래머스] N으로 표현 파이썬 풀이

    [프로그래머스] N으로 표현 파이썬 풀이

    2021.11.25
  • [프로그래머스] 자물쇠와 열쇠 파이썬

    [프로그래머스] 자물쇠와 열쇠 파이썬

    2021.11.11
  • 프로그래머스_정수삼각형

    프로그래머스_정수삼각형

    2021.10.20
  • [프로그래머스] 입국심사 파이썬 풀이

    [프로그래머스] 입국심사 파이썬 풀이

    2021.10.18
다른 글 더 둘러보기

정보

자라자 블로그의 첫 페이지로 이동

자라자

  • 자라자의 첫 페이지로 이동

검색

메뉴

  • 🏠 HOME
  • 💡 ABOUT
  • 💻 GITHUB

카테고리

  • 분류 전체보기 (91)
    • Tech Note (3)
    • Dev Log (11)
    • Study Log (11)
    • Settings (3)
    • PS (53)
      • Programmers (21)
      • BOJ (32)
    • Diary (10)

인기 글

공지사항

태그

  • 공식문서읽기
  • 리액트
  • ㅣ

정보

자라자의 자라자

자라자

자라자

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © 자라자. Designed by Fraccino.

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.