Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- level3
- url 랜더링
- 프로그래머스
- 블로그 뉴비
- API 활용 신청
- react-router-dom
- 고고학 최고의 발견
- React
- 보안
- php-1
- python
- expo
- 오블완
- 훈수 가능
- 사업계획서
- web-view
- redux state값 유지
- 꿀팁 환영
- Redux
- 코딩테스트
- 부산 맛집 OPEN API
- 공공데이터 포털
- 개발
- 새로고침
- Dreamhack
- 드림핵
- 티스토리챌린지
- 창업 300
- apk 빌드
Archives
- Today
- Total
1223v
[Progammers] Python 프로그래머스 모의고사(42840) 본문
https://school.programmers.co.kr/learn/courses/30/lessons/42840
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
완전 탐색문제이다. 3명의 답안 패턴을 가지고, 가장 많이 맞은 사람을 찾는 로직이다.
답안의 패턴 배열을 만들고, 나머지 연산으로 값의 정답 유무를 확인하면 된다.
def solution(answers):
result = []
correct_length = len(answers)
one_ans = [1,2,3,4,5]
two_ans = [2,1,2,3,2,4,2,5]
three_ans = [3,3,1,1,2,2,4,4,5,5]
count = [0,0,0,0]
for i in range(correct_length):
if one_ans[i%5] == answers[i]:
count[1] += 1
if two_ans[i%8] == answers[i]:
count[2] += 1
if three_ans[i%10] == answers[i]:
count[3] += 1
for i in range(1,len(count)):
if count[i] == max(count):
result.append(i)
return result
회고.
처음에는 사람이 3명인줄 모르고 dfs 백트래킹으로 완탐을 돌렸는데... 역시 문제를 잘 읽어야겠다.
'PS' 카테고리의 다른 글
[BOJ] Python 백준 주사위 쌓기(2116) (1) | 2024.11.22 |
---|---|
[Progammers] Python 프로그래머스 모의고사(42840) (0) | 2024.11.18 |
[BOJ] Python 백준 강의실(1347) (0) | 2024.11.15 |
[BOJ] Python 백준 센서(2212) (1) | 2024.11.14 |
[BOJ] Python 백준 밤양갱(31926) (0) | 2024.11.13 |