문제 설명 및 제한사항
아이디어 및 해결 방법
코드
from collections import Counter
def solution(weights):
answer = 0
# 같은 weight가 있는 경우는 따로 처리해줍니다.
counter = Counter(weights)
for w, cnt in counter.items():
answer += cnt * (cnt - 1) // 2
wset = set(weights)
for w in weights:
# 4/3배
if w % 3 == 0:
target_weight = w * 4 // 3
answer += counter[target_weight]
# 3/2배
if w % 2 == 0:
target_weight = w * 3 // 2
answer += counter[target_weight]
# 2배
target_weight = w * 2
answer += counter[target_weight]
return answer
Python
복사
출처
프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges