[프로그래머스]모의고사
https://school.programmers.co.kr/learn/courses/30/lessons/42840
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr


긴 설명 없이 바로 풀이로 들어가겠습니다.
*풀이
일단 수포자들의 정답 찍는 방식을 각각 배열로 만들어 줍니다.

각각의 배열과 answers 배열을 비교하여 정답을 카운트시켜 줄 변수를 선언해줍니다.
3개의 배열이니 3개의 변수가 필요하겠죠?

그 다음 반복문을 돌려서 각각의 수포자 정답이 일치하는지를 확인해줍니다.

반복문을 거친 후에 answer1, answer2, answer3의 값중에서 최대값을 찾은 후 ArrayList를 선언해줍니다.

만약에 최대값이 answer1 or answer2 or answer3인 경우 answer1은 1, answer2는 2, answer3은 3을 list에 추가해줍니다. 만약에 answer1, answer2, answer3의 값이 같다면 list에 모두 추가됩니다. 그리고 answer 배열의 길이를 ArrayList의 길이만큼 지정해주고 answer배열에 ArrayList의 요소를 넣어주면 끝입니다.

*최종소스
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 45 46 47 48 49 50 51 52 53 54 55 | import java.util.ArrayList; class Solution { public int[] solution (int[] answers) { int[] answer = {}; int[] supo1 = {1, 2, 3, 4, 5}; int[] supo2 = {2, 1, 2, 3, 2, 4, 2, 5}; int[] supo3 = {3, 3, 1, 1, 2, 2, 4, 4, 5, 5}; int answer1 = 0; int answer2 = 0; int answer3 = 0; for (int i = 0; i < answers.length; i++) { if (supo1[i % supo1.length] == answers[i]) { answer1++; } if (supo2[i % supo2.length] == answers[i]) { answer2++; } if (supo3[i % supo3.length] == answers[i]) { answer3++; } } int max = Math.max(Math.max(answer1, answer2), answer3); ArrayList<Integer> list = new ArrayList<Integer>(); if (max == answer1) { list.add(1); } if (max == answer2) { list.add(2); } if (max == answer3) { list.add(3); } answer = new int[list.size()]; for (int i = 0; i < answer.length; i++) { answer[i] = list.get(i); } return answer; } } | cs |
'Algorithm > 프로그래머스' 카테고리의 다른 글
| [프로그래머스]카운트 다운 (0) | 2024.06.10 |
|---|---|
| [프로그래머스]-K번째수 (0) | 2022.12.30 |
| [프로그래머스]카펫 (0) | 2022.12.28 |
| [프로그래머스]-최소 직사각형 (0) | 2022.12.28 |
| [프로그래머스]부족한 금액 계산하기 (0) | 2022.12.27 |
댓글
이 글 공유하기
다른 글
-
[프로그래머스]카운트 다운
[프로그래머스]카운트 다운
2024.06.10 -
[프로그래머스]-K번째수
[프로그래머스]-K번째수
2022.12.30 -
[프로그래머스]카펫
[프로그래머스]카펫
2022.12.28 -
[프로그래머스]-최소 직사각형
[프로그래머스]-최소 직사각형
2022.12.28