[Algorithm] 가장 점수가 높은 사람을 리턴 하라
프로그래머스[초급] 1번 학생 : 1,2,3,4,5, ---- 쭉 반복 2번 학생 : 2,1,2,3,2,4,2,5 ---- 쭉 반복 3번 학생 : 3,3,1,1,2,2,4,4,5,5 ---- 쭉 반복 되며 정답 배열 answers[] 가 주어질때 1,2,3번 학생중 가장 많이 맞은 학생을 리턴하라, 만약 동일한 점수의 사람이 있다면 학생 순번이 빠른 순서대로 리턴하라 여태까지 풀면서 가장 오래 걸린 알고리즘 문제였다. 풀이를 설명하자면 1.우선 반복 되는 패턴을 조사하여 1번,2번,3번 학생의 리턴을 배열로 하여 2차원 배열을 선언하여 넣어주었다. 2. 향상된for문을 통해서 arr[]을 꺼내서 answers[] 배열과 정답이 같은지 확인하여 check 변수를 통해서 맞은 갯수를 파악하였고, answer..
2022. 6. 2.
[Algorithm] K번째 숫자
프로그래머스[초급] 문제는 1개의 배열과, 1개의 2차원 배열이 주어지며, 2차원배열에서는 { {i,j,k},{4,7,5}, {1,6,4} }; 다음과 같이 숫자가 주어지며, array의 i번쨰 부터 j 번재까지를 새로운 배열로 생성 후 정렬한다음에 k번째 가 무엇인지 리턴하시요. 나의 풀이 방법으로는 .. 1. 우선 리턴되야 하는 answer의 배열의 크기는 commands의 길이와 같으므로 answer의 크기를 commands의 길이로 설정했다. 2. array배열의 i ~ j 까지 요소를 담을 sort를 선언하고 3. num , check 를 선언하여 sort의 배열요소를 하나씩 저장할떄 사용하고, answer에 k번쨰를 담을때 사용하였다. 4. commands는 2차원 배열로 향상된 for문을 통..
2022. 6. 1.