728x90
반응형
삼총사(프로그래머스 Lv.1)
https://school.programmers.co.kr/learn/courses/30/lessons/131705
내 코드
def solution(number):
answer = 0
for i in range(len(number)-2):
for j in range(i+1,len(number)-1):
for k in range(j+1,len(number)):
if number[i]+number[j]+number[k] == 0:
answer += 1
return answer
중복이 없도록 만들었으므로 따로 6을 나눠주지 않아도됨.
베스트 코드
from itertools import combinations
def solution(number):
return sum([1 for c in list(combinations(number,3)) if not sum(c)])
다른 사람 코드 확인하니 combinations모듈을 사용해서 쓰는 방법도 있더라,
순간 모듈과 라이브러리가 헷갈려서 찾아봤는데, 혹시 읽는이도 그렇다면 아래링크를 참고 바란다.
https://star-ccomputer-go.tistory.com/70
728x90
반응형
'Python공부 > 프로그래머스' 카테고리의 다른 글
(Python) 크기가 작은 부분 문자열(프로그래머스Lv.1)/[:]의 활용 (0) | 2023.06.14 |
---|---|
(Python)시저 암호(프로그래머스Lv.1) (0) | 2023.06.14 |
(Python)같은 숫자는 싫어(프로그래머스 Lv.1)/한줄코딩 연습 (0) | 2023.06.14 |
(Python)최소 직사각형(프로그래머스 Lv.1) (0) | 2023.06.14 |
(Python)최대공약수와 최대공배수(프로그래머스 Lv.1) (0) | 2023.06.14 |