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

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

หšโ‚Šโœฉโ€งโ‚Š ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค java - ํŠน์ดํ•œ ์ •๋ ฌ หšโ‚Šโœฉโ€งโ‚Š

HYEJU01 2024. 6. 5. 18:53
์ฒด๊ฐ Level : โ˜… โ˜… โ˜…
Review: ๋ฐฐ์—ด์˜ ์‘์šฉ! ์ˆซ์ž ์‚ฌ์ด์˜ ๊ด€๊ณ„์™€ ์ •๋ ฌ์„ ์•Œ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

๐Ÿ’ก์ •์ˆ˜ n์„ ๊ธฐ์ค€์œผ๋กœ n๊ณผ ๊ฐ€๊นŒ์šด ์ˆ˜๋ถ€ํ„ฐ ์ •๋ ฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ n์œผ๋กœ๋ถ€ํ„ฐ์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ™๋‹ค๋ฉด ๋” ํฐ ์ˆ˜๋ฅผ ์•ž์— ์˜ค๋„๋ก ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค. ์ •์ˆ˜๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด numlist์™€ ์ •์ˆ˜ n์ด ์ฃผ์–ด์งˆ ๋•Œ numlist์˜ ์›์†Œ๋ฅผ n์œผ๋กœ๋ถ€ํ„ฐ ๊ฐ€๊นŒ์šด ์ˆœ์„œ๋Œ€๋กœ ์ •๋ ฌํ•œ ๋ฐฐ์—ด์„ return

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

 

 

 

 

 

1) ๋ฐฐ์—ด์„ ์ •๋ ฌํ•˜๊ณ  ์‹œ์ž‘

2) ๊ฐ๊ฐ ๋ฐฐ์—ด ๊ฐ’์—์„œ n ์„ ๋บ€ ๊ฐ’ (์ ˆ๋Œ“๊ฐ’์œผ๋กœ) ๋น„๊ต  ==> ๊ทœ์น™๋Œ€๋กœ ๊ฐ€๊นŒ์šด ์ˆ˜๋ถ€ํ„ฐ ์ˆœ์„œ๊ฐ€ ์ •ํ•ด์ง„๋‹ค!!!

4) ์ž๋ฆฌ ์ด๋™

 

 

 

[์ฐธ๊ณ ]

 

import java.util.Arrays;

class Solution {
    public int[] solution(int[] numlist, int n) {
        Arrays.sort(numlist);
        
        for (int i=0; i<numlist.length; i++){
            for (int j =0; j<numlist.length; j++){
                if(Math.abs(n-numlist[i]) <= Math.abs(n-numlist[j])){
                    int temp = numlist[i];
                    numlist[i] = numlist[j];
                    numlist[j] = temp;
                }
            }
        }
    
        return numlist;
    }
}

 


 

 

 

[์‹คํŒจ]  ์—ด์‹ฌํžˆ ํ’€์–ด๋ดค์ง€๋งˆ ๋Œ€ ์‹คํŒจ.. ์ˆ˜์ •ํ•  ์ˆ˜๋ก ๋” ์‚ฐ์œผ๋กœ ๊ฐ€์„œ ... ์ƒˆ๋กœ์šด ์ ‘๊ทผ๋ฒ•์ด ํ•„์š”ํ–ˆ๋‹ค.

import java.util.ArrayList;

class Solution {
    public    ArrayList <Integer>  solution(int[] numlist, int n) {
        ArrayList <Integer> arr = new ArrayList<>();
        int max = -1, min =123456;
        int index = 0 ;
        
        for(int i = 0; i < numlist.length; i++){
            if (n < numlist[i]){
                max = numlist[i];
            }
            if (n > numlist[i]){
                min = numlist[i];
            }
        }
        
        for(int i = 0; i < numlist.length; i++){
            if (numlist[i] == n){
                arr.add(numlist[i]);
                index = i;
            }else if(max - n > n - min){
                arr.add(numlist[i]);
                index = i;
            } else {
                arr.add(numlist[i]);
                index = i;
            }
        }
        
        int len = numlist.length;

        for (int i = index+1; i<len; i++){
             arr.add(numlist[i]);
            }
        
        for (int i = index-1; i >= 0; i--){
             arr.add(numlist[i]);
            }
    
        return arr;
    }
}