[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๊ฑฐ์Šค๋ฆ„๋ˆ(C++)

2023. 7. 25. 12:05ยท๐Ÿ–ฅ๏ธ Study Note/Coding Test

๋ฌธ์ œ ์„ค๋ช…

Finn์€ ํŽธ์˜์ ์—์„œ ์•ผ๊ฐ„ ์•„๋ฅด๋ฐ”์ดํŠธ๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•ผ๊ฐ„์— ์†๋‹˜์ด ๋„ˆ๋ฌด ์—†์–ด ์‹ฌ์‹ฌํ•œ Finn์€ ์†๋‹˜๋“ค๊ป˜ ๊ฑฐ์Šค๋ฆ„๋ˆ์„ n ์›์„ ์ค„ ๋•Œ ๋ฐฉ๋ฒ•์˜ ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๊ธฐ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด์„œ ์†๋‹˜๊ป˜ 5์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ค˜์•ผ ํ•˜๊ณ  1์›, 2์›, 5์›์ด ์žˆ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด 4๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ 5์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • 1์›์„ 5๊ฐœ ์‚ฌ์šฉํ•ด์„œ ๊ฑฐ์Šฌ๋Ÿฌ ์ค€๋‹ค.
  • 1์›์„ 3๊ฐœ ์‚ฌ์šฉํ•˜๊ณ , 2์›์„ 1๊ฐœ ์‚ฌ์šฉํ•ด์„œ ๊ฑฐ์Šฌ๋Ÿฌ ์ค€๋‹ค.
  • 1์›์„ 1๊ฐœ ์‚ฌ์šฉํ•˜๊ณ , 2์›์„ 2๊ฐœ ์‚ฌ์šฉํ•ด์„œ ๊ฑฐ์Šฌ๋Ÿฌ ์ค€๋‹ค.
  • 5์›์„ 1๊ฐœ ์‚ฌ์šฉํ•ด์„œ ๊ฑฐ์Šฌ๋Ÿฌ ์ค€๋‹ค.

๊ฑฐ์Šฌ๋Ÿฌ ์ค˜์•ผ ํ•˜๋Š” ๊ธˆ์•ก n๊ณผ Finn์ด ํ˜„์žฌ ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” ๋ˆ์˜ ์ข…๋ฅ˜ money๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, Finn์ด n ์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ค„ ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”.

๋‚ด ํ’€์ด

๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๊ธฐ๋Š” ๋„ˆ๋ฌด๋„ˆ๋ฌด ์–ด๋ ค์šด๋ฐ ๋ง‰์ƒ ์ฝ”๋“œ๋ณด๊ณ  ํ•˜๋‚˜ํ•˜๋‚˜ ๊ณผ์ •์„ ๋”ฐ๋ผ๊ฐ€๋‹ค๋ณด๋ฉด ์•„ํ•˜,,,ํ•˜๊ฒŒ ๋˜๋Š” ํŠน์œ ์˜ DP ๋ฌธ์ œ์˜€๋‹ค. DP ๋ฌธ์ œ ๋งŽ์ด ํ’€์–ด๋ด์•ผ๊ฒ ๋‹ค.

n = 5, money = [1, 2, 5] ์ผ ๋•Œ,

0์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[0]) ⇒ 1

1์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[1]) ⇒ dp[0] : 1

2์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[2]) ⇒ dp[1] + dp[0] : 2

3์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[3]) ⇒ dp[2] + dp[1] : 2

4์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[4]) ⇒ dp[3] + dp[2] : 3

5์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[5]) ⇒ dp[4] + dp[3] + dp[0] : 4

 

n = 5, money = [1, 2, 3, 4, 5] ์ผ ๋•Œ,

0์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[0]) ⇒

1์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[1]) ⇒ dp[0] : 1

2์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[2]) ⇒ dp[1] + dp[0] : 2

3์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[3]) ⇒ dp[2] + dp[1] + dp[0] : 3

4์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[4]) ⇒ dp[3] + dp[2] + dp[1] + dp[0] : 5

5์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ๋Š” ๊ฒฝ์šฐ(dp[5]) ⇒ dp[4] + dp[3] + dp[2] + dp[1] + dp[0] : 7

#include <string>
#include <vector>

using namespace std;

int solution(int n, vector<int> money) {
    vector<int> dp = vector<int>(n+1, 0);
    dp[0] = 1;
    
    for(const auto m : money)
    {
        for(int i = m; i <= n; ++i)
        {
            dp[i] += dp[i-m];
        }
    }
    
    return dp[n];
}
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐Ÿ–ฅ๏ธ Study Note > Coding Test' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - n^2 ๋ฐฐ์—ด ์ž๋ฅด๊ธฐ(C++)  (0) 2023.07.28
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ํ…Œ์ด๋ธ” ํ•ด์‹œ ํ•จ์ˆ˜(C++)  (0) 2023.07.27
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - [์นด์นด์˜ค ์ธํ„ด] ์ˆ˜์‹ ์ตœ๋Œ€ํ™”(C++)  (0) 2023.07.24
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ์—ฐ์† ๋ถ€๋ถ„ ์ˆ˜์—ด ํ•ฉ์˜ ๊ฐœ์ˆ˜(C++)  (0) 2023.07.23
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 -ํ•˜๋…ธ์ด์˜ ํƒ‘(C++)  (2) 2023.07.22
'๐Ÿ–ฅ๏ธ Study Note/Coding Test' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - n^2 ๋ฐฐ์—ด ์ž๋ฅด๊ธฐ(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ํ…Œ์ด๋ธ” ํ•ด์‹œ ํ•จ์ˆ˜(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - [์นด์นด์˜ค ์ธํ„ด] ์ˆ˜์‹ ์ตœ๋Œ€ํ™”(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ์—ฐ์† ๋ถ€๋ถ„ ์ˆ˜์—ด ํ•ฉ์˜ ๊ฐœ์ˆ˜(C++)
Beankong_
Beankong_
์ฃผ๋‹ˆ์–ด ํด๋ผ์ด์–ธํŠธ ํ”„๋กœ๊ทธ๋ž˜๋จธ ๊ณต๋ถ€ ๊ธฐ๋ก
  • Beankong_
    Beankong's Devlog
    Beankong_
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ์ „์ฒด ๊ธ€ (146)
      • โ›… Daily (0)
      • ๐Ÿ–ฅ๏ธ Study Note (2)
        • C++ (1)
        • Unreal Engine (5)
        • Coding Test (123)
        • Design Patteren (5)
        • VCS (Git..) (1)
        • Server (1)
      • ๐Ÿงญ Devlog (8)
        • ์˜ค๋‹ต๋…ธํŠธ (4)
        • UE5 GameLift Server Test Project (1)
        • TIL (3)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ๋งํฌ

    • ๊ณต์ง€์‚ฌํ•ญ

    • ์ธ๊ธฐ ๊ธ€

    • ํƒœ๊ทธ

      ๊ทธ๋ฆฌ๋””(greedy)
      UnrealEngine5
      UnrealEngine
      ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ
      cpp
      ํ”„๋ฃŒ๊ทธ๋ž˜๋จธ์Šค
      programmers
      unrealengine module
      ๊ฒŒ์ž„ํ”„๋กœ๊ทธ๋ž˜๋ฐ
      ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
      ๊ฒŒ์ž„ ๋ชจ์ž‘
      ์•Œ๊ณ ๋ฆฌ์ฆ˜
      propertyaccess
      ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜
      ๊ฒŒ์ž„ ๊ฐœ๋ฐœ
      ํ—ฌํ…Œ์ด์ปค
      ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
      unrealengine build system
      OnlineSubsystem
      ๊ทธ๋ž˜ํ”„ ์ˆœํšŒ
    • ์ตœ๊ทผ ๋Œ“๊ธ€

    • ์ตœ๊ทผ ๊ธ€

    • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
    Beankong_
    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๊ฑฐ์Šค๋ฆ„๋ˆ(C++)
    ์ƒ๋‹จ์œผ๋กœ

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”