본문 바로가기

Problem Solving/programmers

[programmers] Level 1 폰켓몬.java

728x90
반응형
SMALL

프로그래머스 Level 1 폰켓몬을 자바를 통해 풀어보았다. 

 

programmers.co.kr/learn/courses/30/lessons/72410programmers.co.kr/learn/courses/30/lessons/1845

 

코딩테스트 연습 - 폰켓몬

당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.

programmers.co.kr

 

폰켓몬.java

 

tomy9729/Algorithm

🐗 내가 직접 작성한 내 코드 🐗. Contribute to tomy9729/Algorithm development by creating an account on GitHub.

github.com

 


Level 1 - 폰켓몬

//Level 1 폰켓몬.java
import java.util.Arrays;
class Solution {
    public int solution(int[] nums) {
        int answer = 0;
        Arrays.sort(nums); //nums의 최댓값을 구하기위해 정렬 : 폰켓몬 종료의 수를 알기 위함
        int[] kind = new int[nums[nums.length-1]];//폰켓몬 종류만큼 kind 크기 설정
        
        for(int i=0;i<nums.length;i++){
            kind[nums[i]-1]++; //각 종류마다 폰켓몬이 몇마리 있는지 확인
        }
        
        int kind_nums = 0;
        for(int i=0;i<kind.length;i++){
            if(kind[i]!=0){
                kind_nums++; //존재하는 폰켓몬의 종류 수 확인
            }
        }
        
        if(nums.length/2 > kind_nums){//폰켓몬의 종류보다 가져가는 폰켓몬의 수가 많으면
            answer = kind_nums;//폰켓몬의 종류 모두 가져갈 수 있음
        }
        else{
            answer=nums.length/2;
        }
        
        return answer;
    }
}

 

728x90
반응형
SMALL