[programmers] 프로그래머스 Level1 모의고사
(파이썬 Python)
* 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제
1) 문제
2) 풀이 과정
1. 각 수포자 패턴을 리스트로 정리
2. answers에 있는 각 element 값과 수포자의 element값을 확인
3. 맞아 떨어질 때마다 1씩 카운팅
4. 각 개수의 합이 큰 요소를 위해 최댓값 구하기
5. 가장 높은 점수를 받은 사람이 여럿일 경우, return 값 오름차순 정렬
ㄴ1) first_answer 가 가장 높은 점수이면 - > 1
ㄴ2) second_answer가 가장 높은 점수이면 - > 2
ㄴ3) third_answer가 가장 높은 점수이면 - > 3
따로 sort()할 필요 없이, 순서대로 append() 해주기
< < 사고 과정 > >
1. 묻는거 우선 확인
: 가장 많은 문제를 맞힌 사람이 누구인지?
2. 문제를 맞히려면?
: answers와 각 supoja_1,2,3 의 답이 일치해야 맞는 거겠지?
3. 가장 많이 맞힌 사람을 확인 => max()
ㄴ가장 많이 맞힌 사람이 1번이라면 = > 1
ㄴ가장 많이 맞힌 사람이 2번이라면 = > 2
ㄴ가장 많이 맞힌 사람이 3번이라면 = > 3
3) 코드
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
def solution(answers):
supoja_1 = [1,2,3,4,5]
supoja_2 = [2,1,2,3,2,4,2,5]
supoja_3 = [3,3,1,1,2,2,4,4,5,5]
first_answer = 0
second_answer = 0
third_answer = 0
for i in range(0, len(answers)):
if(answers[i] == supoja_1[i % len(supoja_1)]):
first_answer += 1
if(answers[i] == supoja_2[i % len(supoja_2)]):
second_answer += 1
if(answers[i] == supoja_3[i % len(supoja_3)]):
third_answer += 1
max_answer = max(first_answer, second_answer, third_answer)
'''
if(first_answer >= second_answer) and (first_answer >= third_answer):
max_answer = first_answer
elif(second_answer >= third_answer) and (second_answer >= third_answer):
max_answer = second_answer
else:
max_answer = third_answer
'''
answer = []
if(max_answer == first_answer):
answer.append(1)
if(max_answer == second_answer):
answer.append(2)
if(max_answer == third_answer):
answer.append(3)
return answer
|
cs |
max() 함수를 풀어서 심심풀이로 작성해봤다.
'''
'''
부분은 생략해도 된다.
4) 정리 노트
X
'*Algorithm > Programmers_Level1' 카테고리의 다른 글
[programmers] 프로그래머스 Level1 체육복 (파이썬 Python) (0) | 2021.03.21 |
---|---|
[programmers] 프로그래머스 Level1 소수 찾기(파이썬 Python) (0) | 2020.12.14 |
[programmers] 프로그래머스 Level1 최대공약수와 최소공배수(파이썬 Python) (0) | 2020.10.14 |
[programmers] 프로그래머스 Level1 시저 암호(파이썬 Python) (0) | 2020.10.10 |
[programmers] 프로그래머스 Level1 이상한 문자 만들기(파이썬 Python) (0) | 2020.10.05 |
댓글