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

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

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

HYEJU01 2024. 5. 20. 12:13
์ฒด๊ฐ Level : โ˜…โ˜…โ˜†
Review:  ์กฐ๊ฑด ์žก๋Š”๊ฒŒ ์ƒ๊ฐ๋ณด๋‹ค ๋ณต์žกํ–ˆ๋˜ ๋ฌธ์ œ

 

๐Ÿ’ก  ์ •์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, array์— ๋“ค์–ด์žˆ๋Š” ์ •์ˆ˜ ์ค‘ n๊ณผ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ˆ˜๋ฅผ returnํ•œ๋‹ค.

 

1) ์ž…๋ ฅ ๋ฐฐ์—ด์€ ์ˆ˜๊ฐ€ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋“ค์–ด์˜ค๋Š”๊ฒŒ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์—, ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์„ ์ง„ํ–‰ํ•ด์ค€๋‹ค.

2) n ๋ณด๋‹ค ๊ฐ™๊ฑฐ๋‚˜ ์ž‘์€ ๊ฐ€๊นŒ์šด์ˆ˜์™€ n ๋ณด๋‹ค ๊ฐ™๊ฑฐ๋‚˜ ํฐ ๊ฐ€๊นŒ์šด์ˆ˜ ๋ฅผ ์ฐพ์•„์ค€๋‹ค.

3) ๋‘˜์ค‘ ํ•˜๋‚˜๊ฐ€ 0 ์ด๋ผ๋ฉด => ๋น„๊ตํ•  ์ด์œ ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— 0์ด ์•„๋‹Œ max ๋‚˜ min ์„ ๋ฆฌํ„ดํ•ด์ฃผ๊ณ 

4) ๋‘˜๋‹ค ๊ฐ’์ด ๋“ค์–ด์žˆ๋‹ค๋ฉด => max , min ๊ฐ’ ์ค‘ n ๊ณผ ๊ฐ€๊นŒ์šด ๊ฐ’์„ ์ฐพ์•„์ค€๋‹ค.

 

 

[์„ฑ๊ณต]

(+) ํ…Œ์ŠคํŠธ 3๋ฒˆ ์‹คํŒจ ::  if (array[i] <= n) ๊ฐ™๋‹ค๋Š” ์กฐ๊ฑด์„ ๋„ฃ์–ด์ฃผ๋‹ˆ ๋งž์•˜๋‹ค!

import java.lang.Math;
import java.util.Arrays;

class Solution {
    public int solution(int[] array, int n) {
        int answer = 0;
        int min =0, max=0;
        
        Arrays.sort(array); // ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ 
        
        for (int i =0 ; i < array.length; i++){
            if (array[i] <= n){ // n๋ณด๋‹ค ์ œ์ผ ์ž‘์€ ๊ฐ€๊นŒ์šด์ˆ˜ 1๊ฐœ
                min = array[i];
            }else if (array[i] >= n){ // n ๋ณด๋‹ค ํฐ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ˆ˜ 1๊ฐœ
                max = array[i];
                break;
            }
        }
        if ( max == 0 || min == 0){ // ๋น„๊ตํ•  ๊ฐ’์ด ์—†์„ ๋–„
            if ( min == 0){
                answer = max;
            }else {
                answer = min;
            }
        }else { // ๋น„๊ตํ•  ๊ฐ’์ด ์žˆ์„ ๋•Œ
            if ( Math.abs(max - n) > Math.abs(n - min)){
                answer = min;
            }else if ( Math.abs(max - n) == Math.abs(n - min)){ 
                answer = min;
            }
            else {
                answer = max;
            }
        }
        
        return answer;
    }
}

 

 

[์‹คํŒจ]  3๋ฒˆ ์ผ€์ด์Šค ๋นผ๊ณ  ๋‹ค ๋งž๋Š”๋‹ค!

+) ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ ์ถ”๊ฐ€

+) [2, 3, 4], 1  >> ๋ฐ˜๋ก€ ์ฝ”๋“œ ์ถ”๊ฐ€

import java.lang.Math;
import java.util.Arrays;

class Solution {
    public int solution(int[] array, int n) {
        int answer = 0;
        int min =0, max=0;
        
        Arrays.sort(array); // ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ 
        
        for (int i =0 ; i < array.length; i++){
            if (array[i] < n){ // n๋ณด๋‹ค ์ œ์ผ ์ž‘์€ ๊ฐ€๊นŒ์šด์ˆ˜ 1๊ฐœ
                min = array[i];
            }else if (array[i] > n){ // n ๋ณด๋‹ค ํฐ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ˆ˜ 1๊ฐœ
                max = array[i];
                break;
            }
        }
        if ( max == 0 || min == 0){ // ๋น„๊ตํ•  ๊ฐ’์ด ์—†์„ ๋–„
            if ( min == 0){
                answer = max;
            }else {
                answer = min;
            }
        }else { // ๋น„๊ตํ•  ๊ฐ’์ด ์žˆ์„ ๋•Œ
            if ( Math.abs(max - n) > Math.abs(n - min)){
                answer = min;
            }else if ( Math.abs(max - n) == Math.abs(n - min)){ 
                answer = min;
            }
            else {
                answer = max;
            }
        }
        
        return answer;
    }
}

 

 

[์‹คํŒจ] ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ๋งž์ง€๋งŒ ์‹คํ–‰๊ฒฐ๊ณผ์—์„œ ์ „๋ถ€ ํ‹€๋ฆฐ๋‹ค

import java.lang.Math;

class Solution {
    public int solution(int[] array, int n) {
        int answer = 0;
        int min =0, max=0;
        
        for (int i =0 ; i < array.length; i++){
            if (array[i] < n){ // n๋ณด๋‹ค ์ œ์ผ ์ž‘์€ ๊ฐ€๊นŒ์šด์ˆ˜ 1๊ฐœ
                min = array[i];
                answer = min;
            }else if (array[i] > n){ // n ๋ณด๋‹ค ํฐ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ˆ˜ 1๊ฐœ
                max = array[i];
                break;
            }
        }
        
        if ( Math.abs(max - n) > Math.abs(n - min)){ // ๋น„๊ต
            answer = min;
        }else if ( Math.abs(max - n) == Math.abs(n - min)){ // ๊ฐ€๊นŒ์šด์ˆ˜๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ๋ฉด ์ž‘์€์ˆ˜ 
            answer = min;
        }
        else {
            answer = max;
        }
        

        
        return answer;
    }
}

 


 

โญ ์ฝ”๋“œ ์ฐธ๊ณ 

import java.util.*;

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