Hi, There!
안녕하세요, 바오밥입니다.
목차
- 문제
- 풀이
문제
문제 내용
자연수가 중복 없이 들어있는 리스트가 있습니다.
이 리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법은 몇 가지인지 세려고 합니다.
자연수가 들어있는 리스트 arr가 매개변수로 주어질 때, 이 리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법의 가짓수를 return 하도록 solution 함수를 완성해주세요.
매개변수 설명
자연수가 들어있는 리스트 arr가 solution 함수의 매개변수로 주어집니다.
- arr의 길이는 3 이상 100 이하입니다.
- arr에는 1 이상 1,000 이하의 자연수가 중복 없이 들어있습니다.
- K는 1 이상 10 이하의 자연수입니다.
return 값 설명
리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법의 가짓수를 return 해주세요.
- 그러한 방법이 없다면 0을 return 하면 됩니다.
예시
예시 설명
다음과 같이 4가지 방법이 있습니다.
- 1 + 2 + 3 = 6
- 1 + 3 + 5 = 9
- 2 + 3 + 4 = 9
- 3 + 4 + 5 = 12
풀이
풀이 코드 및 해설
def solution(arr, K):
answer = 0
for i in range(len(arr)-2): # 배열의 0번 요소부터 마지막-2번 요소까지 반복
for j in range(i+1, len(arr)-1): # 배열의 1번 요소부터 마지막-1번 요소까지 반복
for k in range(j+1, len(arr)): # 배열의 2번 요소부터 마지막 요소까지 반복
if (arr[i]+arr[j]+arr[k])%K == 0 : answer += 1
# i = 0, j = 1, k = 0->1->2 식으로 모든 요소를 하나하나 비교
# 요소 순회 중 K로 나누었을 때의 나머지가 0(K의 배수)이면 answer 값 1씩 누적
return answer
'Certificate > Cert - Cos Pro 1급' 카테고리의 다른 글
[Cos Pro 1급] 기출문제 2회차, 로봇을 움직여주세요 (0) | 2021.07.14 |
---|---|
[Cos Pro 1급] 기출문제 2회차, 언제까지 오르막길이야 (0) | 2021.07.14 |
[Cos Pro 1급] 기출문제 2회차, 경품 당첨자를 구해주세요 (0) | 2021.07.14 |
[Cos Pro 1급] 기출문제 2회차, 지하철 기다리기 (0) | 2021.07.14 |
[Cos Pro 1급] 기출문제 2회차, 도서 대여점 운영 (0) | 2021.07.14 |