Notice
Recent Posts
Recent Comments
Link
마이의 개발 블로그
[프로그래머스] 폰켓몬 (Java) 본문
반응형
코딩테스트 연습 - 폰켓몬
당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.
programmers.co.kr
작성 코드
1. 정렬 (Arrays.sort())
2. 한 바퀴 돌면서 중복 안 되는 폰켓몬 번호의 최대값(count)이 몇 개인지 찾는다 (for문).
3. 선택가능한 최대개수 n과 count를 비교하여 그 중 큰 값을 정답으로 반환한다.
import java.util.*;
class Solution {
public int solution(int[] nums) {
int answer = 0;
Arrays.sort(nums);
int count = 0;
int num = -1;
for(int i=0; i<nums.length; i++){
if(num != nums[i])
count++;
num = nums[i];
}
int n = nums.length/2;
if(count >= n)
answer = n;
else
answer = count;
return answer;
}
}
Note
- 처음에 문제를 언뜻보고서는 글이 너무 많아 계속 넘기고 넘겼는데 읽어보니 너무나 간단한 문제였다. 앞으로는 풀기 어려워보여도 좀 더 자세히 들여다봐야겠다.
- 해시로 푸는 방법도 있기는 하나 직접 적용해보니 테스트케이스 응답시간에 별반 차이가 없는 듯하다.
반응형
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 크레인 인형뽑기 게임 (Java) (0) | 2022.03.08 |
---|---|
[프로그래머스] 신고 결과 받기 (Java) (0) | 2022.03.05 |
[프로그래머스] 기능개발 (Java) (0) | 2022.03.03 |
[프로그래머스] 피보나치 수 (Java) (0) | 2022.03.03 |
[프로그래머스] 완주하지 못한 선수 (Java) (0) | 2022.02.24 |
Comments