728x90
반응형
1. 문제 설명
2. 풀이과정
- 수포자마다 찍는 규칙을 리스트로 저장해 둔다. people1 = [1, 2, 3, 4, 5] people2 = [2, 1, 2, 3, 2, 4, 2, 5] people3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]
- 수포자마다 정답을 맞힌 횟수를 저장할 변수를 생성하고 초기화한다. count1 = 0 count2 = 0 count3 = 0
- 입력받은 문제의 정답을 인덱스를 활용해 하나씩 추출한다. for i in range(len(answers))
- 만약 첫 번째 수포자의 답과 추출한 답이 일치하면 if (people1[i - len(people1) * (i // len(people1))] == answers[i])
- 첫 번째 수포자의 정답 횟수를 1 증가시킨다. count1 += 1
- 만약 두 번째 수포자의 답과 추출한 답이 일치하면 if (people2[i - len(people2) * (i // len(people2))] == answers[i])
- 두 번째 수포자의 정답 횟수를 1 증가시킨다. count2 += 1
- 만약 세 번째 수포자의 답과 추출한 답이 일치하면 if (people3[i - len(people3) * (i // len(people3))] == answers[i])
- 세 번째 수포자의 정답 횟수를 1 증가시킨다. count3 += 1
- 세 수포자의 정답 횟수 중 최댓값을 구하고 첫 번째 수포자의 정답 횟수와 일치하면 첫 번째 수포자를 정답에 추가한다. if (count1 == max(count1, count2, count3)): answer.append(1)
- 세 수포자의 정답 횟수 중 최댓값을 구하고 두 번째 수포자의 정답 횟수와 일치하면 두 번째 수포자를 정답에 추가한다. if (count2 == max(count1, count2, count3)): answer.append(2)
- 세 수포자의 정답 횟수 중 최댓값을 구하고 세 번째 수포자의 정답 횟수와 일치하면 세 번째 수포자를 정답에 추가한다. if (count3 == max(count1, count2, count3)): answer.append(3)
반응형
3. 소스코드
def solution(answers):
answer = []
people1 = [1, 2, 3, 4, 5]
people2 = [2, 1, 2, 3, 2, 4, 2, 5]
people3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]
count1 = 0
count2 = 0
count3 = 0
for i in range(len(answers)):
if (people1[i - len(people1) * (i // len(people1))] == answers[i]):
count1 += 1
if (people2[i - len(people2) * (i // len(people2))] == answers[i]):
count2 += 1
if (people3[i - len(people3) * (i // len(people3))] == answers[i]):
count3 += 1
if (count1 == max(count1, count2, count3)):
answer.append(1)
if (count2 == max(count1, count2, count3)):
answer.append(2)
if (count3 == max(count1, count2, count3)):
answer.append(3)
return answer
728x90
반응형
'프로그래머스 > Python' 카테고리의 다른 글
[프로그래머스] 프로세스 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.26 |
---|---|
[프로그래머스] 소수찾기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.25 |
[프로그래머스] 소수 만들기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.25 |
[프로그래머스] 할인 행사 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.24 |
[프로그래머스] 기능개발 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.23 |
[프로그래머스] 카드 뭉치 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.23 |
[프로그래머스] 튜플 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.22 |
[프로그래머스] 과일 장수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.22 |