Algorithm
[프로그래머스][JAVA] 폰켓몬
밍맹030
2021. 6. 11. 21:53
728x90
import java.util.*;
class Solution {
public int solution(int[] nums) {
int answer = 0;
List<Integer> list = new ArrayList<Integer>();
list.add(nums[0]); //배열의 첫 번째 요소를 list에 삽입
for(int i=1; i<nums.length; i++) // nums[] 배열의 중복 제거-> list 길이=폰켓몬 종류
if(!list.contains(nums[i])) //list가 배열의 i번째 요소를 갖고 있지 않은 경우에만
list.add(nums[i]); //list에 i번째 요소를 추가한다.
// list.size(): 폰켓몬 종류, nums.length/2 : 선택 가능한 최대 폰켓몬 수
/*아래 삼항연산자 내용
- 폰켓몬 종류 보다 N/2가 더 크면 폰켓몬 종류를 반환한다.
- 폰켓몬 종류가 N/2보다 크거나 같으면 N/2를 반환한다.*/
answer = (nums.length/2>=list.size() ) ? list.size() : nums.length/2;
return answer;
}
}
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/courses/30/lessons/1845
728x90