Problem ๐Ÿ’ป

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

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr

 

๋ฌธ์ œ ์„ค๋ช…

์–ด๋–ค ์„ธ๊ท ์€ 1์‹œ๊ฐ„์— ๋‘๋ฐฐ๋งŒํผ ์ฆ์‹ํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ ์„ธ๊ท ์˜ ๋งˆ๋ฆฌ์ˆ˜ n๊ณผ ๊ฒฝ๊ณผํ•œ ์‹œ๊ฐ„ t๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ t์‹œ๊ฐ„ ํ›„ ์„ธ๊ท ์˜ ์ˆ˜๋ฅผ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.


์ œํ•œ์‚ฌํ•ญ
  • 1 ≤ n ≤ 10
  • 1 ≤ t ≤ 15

์ž…์ถœ๋ ฅ ์˜ˆntresult
2 10 2048
7 15 229,376

์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • ์ฒ˜์Œ์—” 2๋งˆ๋ฆฌ, 1์‹œ๊ฐ„ ํ›„์—” 4๋งˆ๋ฆฌ, 2์‹œ๊ฐ„ ํ›„์—” 8๋งˆ๋ฆฌ, ..., 10์‹œ๊ฐ„ ํ›„์—” 2048๋งˆ๋ฆฌ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 2048์„ returnํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

  • ์ฒ˜์Œ์—” 7๋งˆ๋ฆฌ, 1์‹œ๊ฐ„ ํ›„์—” 14๋งˆ๋ฆฌ, 2์‹œ๊ฐ„ ํ›„์—” 28๋งˆ๋ฆฌ, ..., 15์‹œ๊ฐ„ ํ›„์—” 229376๋งˆ๋ฆฌ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 229,376์„ returnํ•ฉ๋‹ˆ๋‹ค.

Approach 1 โŒ - ๋‚˜์˜ ์ž˜๋ชป๋œ ์ฝ”๋“œ

class Solution {
    public int solution(int n, int t) {
        int answer = n;
        for (int i = 1; i <= t; i++) {
            answer *= 2;
        }
        return answer;
    }
}

Approach 2 โญ• - ๋‚˜์˜ ๋ฌธ์ œ์  ๋ถ„์„

1. ์ž˜๋ชป๋œ ๋ˆ„์  ๊ณ„์‚ฐ:

answer = 2 * i๋Š” ์„ธ๊ท ์˜ ์ˆ˜๋ฅผ ๋‹จ์ˆœํžˆ 2 * i๋กœ ์„ค์ •ํ•˜๋Š”๋ฐ, ์ด๋Š” ๋ฌธ์ œ์˜ ์กฐ๊ฑด์ธ “์„ธ๊ท ์ด ๋งค ์‹œ๊ฐ„๋งˆ๋‹ค ๋‘ ๋ฐฐ๋กœ ์ฆ์‹”์„ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•œ๋‹ค.

์„ธ๊ท ์˜ ์ฆ์‹์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ตฌํ˜„ํ•˜๋ ค๋ฉด n์„ ๊ธฐ์ค€์œผ๋กœ ๋งค ์‹œ๊ฐ„๋งˆ๋‹ค 2๋ฅผ ๊ณฑํ•ด์•ผ ํ•œ๋‹ค.

 


Solution ๐Ÿ’ก - ์ •๋‹ต ์ฝ”๋“œ

class Solution {
   public int solution(int n, int t) {
       int answer = n; // ์ฒ˜์Œ ์„ธ๊ท ์˜ ์ˆ˜๋กœ ์ดˆ๊ธฐํ™”
       
       for (int i = 1; i <= t; i++) {
           answer *= 2; // ๋งค ์‹œ๊ฐ„๋งˆ๋‹ค ์„ธ๊ท ์˜ ์ˆ˜๋ฅผ ๋‘ ๋ฐฐ๋กœ ์ฆ๊ฐ€
       }
       
       return answer;
   }
}

์ฝ”๋“œ ์„ค๋ช…:

1. ์ดˆ๊ธฐ ๊ฐ’ ์„ค์ •:

answer๋Š” ์ฒ˜์Œ ์„ธ๊ท ์˜ ์ˆ˜ n์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•œ๋‹ค.

2. ์ฆ์‹ ๋ฐ˜๋ณต:

for ๋ฃจํ”„์—์„œ t์‹œ๊ฐ„ ๋™์•ˆ ๋งค ์‹œ๊ฐ„๋งˆ๋‹ค answer์— 2๋ฅผ ๊ณฑํ•œ๋‹ค.

3. ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜:

์ตœ์ข…์ ์œผ๋กœ t์‹œ๊ฐ„ ํ›„์˜ ์„ธ๊ท  ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.


Reference ๐Ÿ“„ - ๋‹ค๋ฅธ ์ ‘๊ทผ๋ฒ•

class Solution {
   public int solution(int n, int t) {
       return n * (int)Math.pow(2, t); // 2์˜ t์ œ๊ณฑ์„ n์— ๊ณฑํ•จ
   }
}

 

+ Recent posts