๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Programmers lv-0

์—ฐ์†๋œ ์ˆ˜์˜ ํ•ฉ - Java [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž…๋ฌธ]

by ๊ทคํ”ผํ‚ค 2022. 11. 28.

 

โค๏ธ Problem

๋”๋ณด๊ธฐ
  • ๋ฌธ์ œ
    ์—ฐ์†๋œ ์„ธ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ๋”ํ•ด 12๊ฐ€ ๋˜๋Š” ๊ฒฝ์šฐ๋Š” 3, 4, 5์ž…๋‹ˆ๋‹ค. ๋‘ ์ •์ˆ˜ num๊ณผ total์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ์—ฐ์†๋œ ์ˆ˜ num๊ฐœ๋ฅผ ๋”ํ•œ ๊ฐ’์ด total์ด ๋  ๋•Œ, ์ •์ˆ˜ ๋ฐฐ์—ด์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋‹ด์•„ returnํ•˜๋„๋ก solutionํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”.

 

  • ์ œํ•œ ์‚ฌํ•ญ
    • 1 ≤ num ≤ 100
    • 0 ≤ total ≤ 1000
    • num๊ฐœ์˜ ์—ฐ์†๋œ ์ˆ˜๋ฅผ ๋”ํ•˜์—ฌ total์ด ๋  ์ˆ˜ ์—†๋Š” ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ์—†์Šต๋‹ˆ๋‹ค.

 

  • ์ž…์ถœ๋ ฅ ์˜ˆ & ์„ค๋ช…
no num total result
1 3 12 [3, 4, 5]
2 5 15 [1, 2, 3, 4, 5]
3 4 14 [2, 3, 4, 5]
4 5 5 [-1, 0, 1, 2, 3]
  1. ๋ณธ๋ฌธ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.
  2. 10๋ถ€ํ„ฐ 50๊นŒ์ง€ 5๋Š” 15, 25, 35, 45, 50 ์ด 5๋ฒˆ ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 5๋ฅผ return ํ•ฉ๋‹ˆ๋‹ค.
  3. 3๋ถ€ํ„ฐ 10๊นŒ์ง€ 2๋Š” ํ•œ ๋ฒˆ๋„ ๋“ฑ์žฅํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ 0์„ return ํ•ฉ๋‹ˆ๋‹ค.

 


 

๐Ÿ’› Solution

ํ’€์ด

class Solution {
    public int[] solution(int num, int total) {
        int avg = total / num;
        int standard = num / 2;
        int start = 0;
        if(total%num==0) {
            start = avg - (standard);
        } else {
            start = avg - (standard-1);
        }


//        int test = 0;
        int[] answer = new int[num];
        int index = 0;
        for (int i=start; i<start+num; i++) {
//            test += i;
            answer[index] = i;
            System.out.println(answer[index]);
            index++;
        }
        return answer;
    }
}

 

์ฒ˜๋ฆฌ์†๋„ Good

 


 

๐Ÿ’œ Comment

์—ฐ์†ํ•œ ์ˆซ์ž๋ฅผ ๋”ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € total์˜ ํ‰๊ท  ๊ฐ’์ด ํ•„์š”ํ–ˆ๋‹ค. ํ‰๊ท ๊ฐ’์ด ์—ฐ์†ํ•œ ์ˆซ์ž์˜ ์ค‘๊ฐ„๊ฐ’์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํ‰๊ท ๊ฐ’์„ ๊ตฌํ•œ ๋‹ค์Œ์—๋Š” num์„ 2๋กœ ๋‚˜๋ˆˆ ๋ชซ์„ ๊ธฐ์ค€์œผ๋กœ ์—ฐ์†๋œ ์ˆซ์ž๋ฅผ ๋งŒ๋“ค๋ฉด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.

์—ฌ๊ธฐ๊นŒ์ง€๋Š” ์ˆ˜์›”ํ•˜๊ฒŒ ์ƒ๊ฐ์ด ์ด์–ด์ ธ์„œ ์ฝ”๋“œ๊ฐ€ ๋‚˜์™”๋Š”๋ฐ ๋ฌธ์ œ๋Š” ์ž…์ถœ๋ ฅ ์˜ˆ 3๋ฒˆ์ด์—ˆ๋‹ค. ์ด๋ ‡๊ฒŒ num์ด ์ง์ˆ˜๋กœ ์ฃผ์–ด์ง€๋Š” ๊ฒฝ์šฐ์—๋Š” ์–ด๋–ป๊ฒŒ ์ค‘์•™๊ฐ’์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์„์ง€ ๋‚œ๊ฐํ–ˆ๋‹ค.

๊ฒฐ๋ก ์ ์œผ๋กœ๋Š” ๋…ธ๊ฐ€๋‹ค๋ฅผ ๊ฑฐ์นœ ๋์—, num์ด ์ง์ˆ˜๋กœ ์ฃผ์–ด์ง€๋Š” ๊ฒƒ์ด ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ total%num != 0์ธ ๊ฒฝ์šฐ๊ฐ€ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌํ–ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๋‚˜์˜จ ์ฝ”๋“œ๊ฐ€ total%num == 0์ด๋ฉด ์‹œ์ž‘๊ฐ’์„ avg-standard๋กœ ์„ค์ •ํ•˜๊ณ , total%num != 0์ด๋ฉด ์‹œ์ž‘๊ฐ’์„ avg-(standard-1)๋กœ ์„ค์ •ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค! ๊ทธ ์ด์œ ๋Š” ์ด ๊ฒฝ์šฐ total์˜ ํ‰๊ท  ๊ฐ’์ด num์˜ ์ค‘์•™๊ฐ’์ด ์•„๋‹Œ ํ•œ ์นธ ์•ž์— ์œ„์น˜ํ•˜๊ฒŒ ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. (์ด ์„ค๋ช…์ด ์ •ํ™•ํ•œ ๊ฑด์ง€๋Š” ์ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค๐Ÿ˜…)

ํ…Œ์ŠคํŠธ๋ฅผ ๋Œ๋ ค๋ณธ ๊ฒฐ๊ณผ ํ†ต๊ณผ!! ํ•˜์ง€๋งŒ ๋ญ”๊ฐ€ ์ ‘๊ทผ๋ฒ•์ด ๋ช…ํ™•ํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์•„ ์กฐ๊ธˆ ์•„์‰ฝ๋‹ค.

 

11117์œ„ ๐Ÿ‘๐ŸŽถ๐ŸŽถ

 

 

 

๋Œ“๊ธ€