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

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

หšโ‚Šโœฉโ€งโ‚Š ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - java ๊ตฌ์Šฌ์„ ๋‚˜๋ˆ„๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ หšโ‚Šโœฉโ€งโ‚Š

HYEJU01 2024. 5. 16. 12:25

 

์ฒด๊ฐ Level : โ˜… โ˜… โ˜†
Review: ๊ฒฝ์šฐ์˜ ์ˆ˜ - ์กฐํ•ฉ ๋ฌธ์ œ์ด๋‹ค, 
์—ฌ์ „ํžˆ for ๋ฌธ ๊ฐ’ ์กฐ์ ˆํ•˜๋Š”๊ฒŒ ์–ด๋ ต๋‹ค ๐Ÿ˜ฐ ์ฆ๊ฐ๊ฐ’์„ ์ž˜ ์‘์šฉํ•˜๊ณ ์‹ถ๋‹ค ใ…œใ…œ

 

 ๐Ÿ’ก ์„œ๋กœ ๋‹ค๋ฅธ n๊ฐœ์˜ ๋ฌผ๊ฑด์—์„œ ์ˆœ์„œ๋ฅผ ์ƒ๊ฐํ•˜์ง€ ์•Š๊ณ  r๊ฐœ ์„ ํƒํ•˜๊ธฐ

=> ์ฆ‰ ์กฐํ•ฉ ๋ฌธ์ œ์ด๋‹ค.

 

 

์กฐํ•ฉ ๊ณต์‹

 

์ด ๊ณผ์ •์„ ์ฝ”๋”ฉํ•ด์ฃผ๋ฉด๋œ๋‹ค!

 

 

 

1) nPr

n์„ 1์”ฉ ๊ฐ์†Œํ•˜๋ฉด์„œ, r ๋ฒˆ ๊นŒ์ง€๋งŒ ๊ณฑํ•œ๋‹ค.

 

2) n! 

n๋ถ€ํ„ฐ 1๊นŒ์ง€,  1์”ฉ ๊ฐ์†Œํ•˜๋ฉด์„œ ๊ณฑํ•œ๋‹ค.

 

3) nPr / n! 

 

class Solution {
    public double solution(int balls, int share) {
        //๊ฒฝ์šฐ์˜ ์ˆ˜ - ์กฐํ•ฉ
        double num1 = 1;
        double num2 = 1;
        
        // nPr
        int i = balls;
        int cnt = 1 ;
        while (cnt <= share){
            num1 *= balls--;
            cnt++;
        }
        
        // n!
        for (int j = share; j >= 1; j--){ 
            num2 *= j; 
        }
        
        
        return num1/num2 ;
    }
}

 

 


[์‹คํŒจ]

์‹คํŒจ์ด์œ ๋Š” nPr ์—์„œ n ์„ ์ค„์—ฌ๊ฐ€๋ฉด์„œ r ๋ฒˆ ๊นŒ์ง€๋งŒ ๊ณฑํ•˜๋Š” ๊ฒƒ์ธ๋ฐ

๋‚˜๋Š” n ์ด r์ด ๋ ๋•Œ๊นŒ์ง€  ์กฐ๊ฑด์„ ์จ๋ฒ„๋ฆฐ ๊ฒƒ์ด๋‹ค .... .๐Ÿ˜ฐ๐Ÿ˜ฐ๐Ÿ˜ฐ  (๋ฐ”๋ณด์ž„..)

class Solution {
    public int solution(int balls, int share) {
        //๊ฒฝ์šฐ์˜ ์ˆ˜ - ์กฐํ•ฉ
        int num1 = 1;
        int num2 = 1;

        // nPr
        int i = balls;
        while (i >= share){
            num1 *= i;
            i--;
        }
        
        // n!
        for (int j = share; j >= 1; j--){  
            num2 *= j; //5 3 2 
        }
        
        
        return num1/num2 ;
    }
}

 

 


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

for ๋ฌธ ํ•˜๋‚˜๋กœ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ’€์–ด์ง„ ์ฝ”๋“œ์ด๋‹ค !!

์–ธ์ œ์ฏค ์ด๋ ‡๊ฒŒ ๊ฐ„๊ฒฐํ•˜๊ณ  ๊นจ๋—ํ•œ ์ฝ”๋“œ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„๊นŒ ๐Ÿฅน๐Ÿฅน

 

1) share๋งŒํผ ๋ฐ˜๋ณตํ•ด์ฃผ๋Š” ๋ฐ˜๋ณต๋ฌธ

2) balls - i ๋ฅผ ํ†ตํ•ด์„œ !! balls ๊ฐ€ ์ค„์–ด๋“ค๋ฉด์„œ 0 ~ share ๋งŒํผ ๋ฐ˜๋ณตํ•ด์ฃผ๋Š” ํšจ๊ณผ๊ฐ€!!

 

class Solution {
    public double solution(int balls, int share) { 
        double answer = 1;

        for(int i = 0; i < share; i++){
            answer = answer * (balls - i) / (i+1);
        }        
        return answer;
    }
}