MapleStory Finger Point Cute Line Smiley Blinking Hello Kitty Angel MapleStory Finger Point

๐Ÿƒ‍โ™€๏ธprogrammers/Java

หšโ‚Šโœฉโ€งโ‚Š ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค java - ๋“ฑ์ˆ˜ ๋งค๊ธฐ๊ธฐ หšโ‚Šโœฉโ€งโ‚Š

HYEJU01 2024. 6. 5. 11:11
์ฒด๊ฐ Level : โ˜… โ˜… โ˜…
Review: ๋™์ ๋ฐฐ์—ด๊ณผ ๋ฐฐ์—ด index ํ™œ์šฉํ•˜๊ธฐ

 

๐Ÿ’ก์˜์–ด ์ ์ˆ˜์™€ ์ˆ˜ํ•™ ์ ์ˆ˜์˜ ํ‰๊ท  ์ ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•™์ƒ๋“ค์˜ ๋“ฑ์ˆ˜๋ฅผ ๋งค๊ธฐ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์˜์–ด ์ ์ˆ˜์™€ ์ˆ˜ํ•™ ์ ์ˆ˜๋ฅผ ๋‹ด์€ 2์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด score๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์˜์–ด ์ ์ˆ˜์™€ ์ˆ˜ํ•™ ์ ์ˆ˜์˜ ํ‰๊ท ์„ ๊ธฐ์ค€์œผ๋กœ ๋งค๊ธด ๋“ฑ์ˆ˜๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด์„ return

https://school.programmers.co.kr/learn/courses/30/lessons/120882

 

 

 



 

1) ๊ฐ๊ฐ ๋”ํ•œ ์ ์ˆ˜๋ฅผ ๋ฐฐ์—ด์— ์‚ฝ์ž…

2) ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ (๋”ํ•œ๊ฐ’์ด ์ž‘์„ ์ˆ˜๋ก ์ˆœ์œ„๊ฐ€ ๋‚ฎ๋‹ค)

3) ์ƒˆ ๋ฐฐ์—ด์— ์˜์–ด,์ˆ˜ํ•™ ๊ณผ๋ชฉ ํ•ด๋‹น ์ธ๋ฑ์Šค๊ฐ’  + 1  (๋“ฑ์ˆ˜)

 

 

[์ฐธ๊ณ ]

import java.util.*;
class Solution {
    public int[] solution(int[][] score) {
        List<Integer> scoreList = new ArrayList<>();
        for(int[] t : score){
            scoreList.add(t[0] + t[1]);
        }
        scoreList.sort(Comparator.reverseOrder());

        int[] answer = new int[score.length];
        for(int i=0; i<score.length; i++){
            answer[i] = scoreList.indexOf(score[i][0] + score[i][1])+1;
        }
        return answer;
    }
}

 

 

 

[์‹คํŒจ] 33.3%

๊ฐ™์€ ๊ฐ’ ๋‚˜์˜ฌ ๋•Œ ์ฒ˜๋ฆฌ๊ฐ€ ์•ˆ๋จ

import java.util.Arrays;
import java.util.ArrayList;

class Solution {
    public  int[]  solution(int[][] score) {
        
        //ArrayList<Integer> answer =  new ArrayList<Integer>();
         int[] answer = new int[score.length];
      
        int[] tmp = new int [score.length];
        int[][] tmp2 = new int [score.length][score[0].length];
        
        for (int i =0; i<score.length; i++){
            tmp2[i][0] =  i  ;
            tmp2[i][1] = (score[i][0]+score[i][1]) / 2;
            tmp[i] = (score[i][0]+score[i][1]) / 2;
        }
        
        Arrays.sort(tmp);
        
        int cnt = 1;
        for (int i =score.length-1; i >= 0; i--){
            for (int j =0; j < tmp2.length; j++){
                if (tmp2[j][1] == tmp[i]){
                        answer[tmp2[j][0]] = cnt; 
                        cnt++;
                    }
            } 
        }

        return answer;
    }
}

 

[์‹คํŒจ]

ํ•ด์‰ฌ๋งต์„ ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ๋จ... ๋‹ค๋ฅธ ๊ฐ’์ด ๋“ค์–ด์˜ค๋ฉด ์ธ๋ฑ์Šค๊ฐ’ ์ฐพ๊ธฐ๊ฐ€ ํž˜๋“ค์–ด์ง€๋‚Ÿ.

import java.util.Arrays;
import java.util.Map;
import java.util.HashMap;
import java.util.ArrayList;

class Solution {
    public  int[] solution(int[][] score) {
        
        ArrayList<Integer> answer =  new ArrayList<Integer>();
        Map<Integer,Integer> m = new HashMap<>();
        int[] tmp = new int [score.length];
        
        int sum1 = 0;
        int sum2 = 0;
        
        for (int i =0; i<score.length; i++){
            tmp[i] = (score[i][0]+score[i][1]) / 2 ;
            m.put((score[i][0]+score[i][1]) / 2, i) ;
        }
        
        //Arrays.sort(tmp);
        //tmp ํ‰๊ท  
        //m <ํ‰๊ท , ์ธ๋ฑ์Šค>
        // 55-3,65-4,70-2,75-1

                 for (int i = 0; i < tmp.length; i++){
                        answer.add(m.get(tmp[i]));
                }
          
        return tmp;
    }
}