[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๋ฉ€๋ฆฌ ๋›ฐ๊ธฐ(C++)

2023. 6. 23. 00:33ยท๐Ÿ–ฅ๏ธ Study Note/Coding Test

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

๋ฌธ์ œ ์„ค๋ช…

ํšจ์ง„์ด๋Š” ๋ฉ€๋ฆฌ ๋›ฐ๊ธฐ๋ฅผ ์—ฐ์Šตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํšจ์ง„์ด๋Š” ํ•œ๋ฒˆ์— 1์นธ, ๋˜๋Š” 2์นธ์„ ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์นธ์ด ์ด 4๊ฐœ ์žˆ์„ ๋•Œ, ํšจ์ง„์ด๋Š”

(1์นธ, 1์นธ, 1์นธ, 1์นธ)

(1์นธ, 2์นธ, 1์นธ)

(1์นธ, 1์นธ, 2์นธ)

(2์นธ, 1์นธ, 1์นธ)

(2์นธ, 2์นธ)

์˜ 5๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋งจ ๋ ์นธ์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฉ€๋ฆฌ๋›ฐ๊ธฐ์— ์‚ฌ์šฉ๋  ์นธ์˜ ์ˆ˜ n์ด ์ฃผ์–ด์งˆ ๋•Œ, ํšจ์ง„์ด๊ฐ€ ๋์— ๋„๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋ช‡ ๊ฐ€์ง€์ธ์ง€ ์•Œ์•„๋‚ด, ์—ฌ๊ธฐ์— 1234567๋ฅผ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•˜์„ธ์š”. ์˜ˆ๋ฅผ ๋“ค์–ด 4๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค๋ฉด, 5๋ฅผ returnํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ œํ•œ ์‚ฌํ•ญ

  • n์€ 1 ์ด์ƒ, 2000 ์ดํ•˜์ธ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ

n result
4 5
3 3

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

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

์œ„์—์„œ ์„ค๋ช…ํ•œ ๋‚ด์šฉ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

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

(2์นธ, 1์นธ)

(1์นธ, 2์นธ)

(1์นธ, 1์นธ, 1์นธ)

์ด 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฉ€๋ฆฌ ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ์ฝ”๋“œ

#include <string>
#include <vector>
#define MOD 1234567

using namespace std;

long long solution(int n) {
    long long answer = 0;
    long long dp[2001];
    
    dp[1] = 1;  // 1์„ ํ‘œํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ 1๊ฐ€์ง€ : {1}
    dp[2] = 2;  // 2๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ 2๊ฐ€์ง€ : {1, 1}, {2}

    for(int i = 3; i <= 2000; ++i)
    {
        // n์„ ํ‘œํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ : n-1์„ ํ‘œํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ + n-2์„ ํ‘œํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜
        dp[i] = (dp[i-1] + dp[i-2]) % MOD;
    }
    
    return dp[n];
}

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

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

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ๊ด‘๋ฌผ ์บ๊ธฐ(C++)  (0) 2023.06.26
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ํ–‰๋ ฌ์˜ ๊ณฑ์…ˆ(C++)  (0) 2023.06.25
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ์ž๋ฌผ์‡ ์™€ ์—ด์‡ (C++)  (0) 2023.06.21
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.1 - ํ•˜์ƒค๋“œ ์ˆ˜(C++)  (0) 2023.06.20
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ํƒ๋ฐฐ ์ƒ์ž(C++)  (0) 2023.06.19
'๐Ÿ–ฅ๏ธ Study Note/Coding Test' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ๊ด‘๋ฌผ ์บ๊ธฐ(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.2 - ํ–‰๋ ฌ์˜ ๊ณฑ์…ˆ(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ์ž๋ฌผ์‡ ์™€ ์—ด์‡ (C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.1 - ํ•˜์ƒค๋“œ ์ˆ˜(C++)
Beankong_
Beankong_
์ฃผ๋‹ˆ์–ด ํด๋ผ์ด์–ธํŠธ ํ”„๋กœ๊ทธ๋ž˜๋จธ ๊ณต๋ถ€ ๊ธฐ๋ก
  • Beankong_
    Beankong's Devlog
    Beankong_
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ์ „์ฒด ๊ธ€ (141)
      • โ›… Daily (0)
      • ๐Ÿ–ฅ๏ธ Study Note (135)
        • Unreal Engine (5)
        • Coding Test (123)
        • Design Patteren (5)
        • VCS (Git..) (1)
        • Server (1)
      • ๐Ÿงญ Devlog (6)
        • ์˜ค๋‹ต๋…ธํŠธ (2)
        • UE5 GameLift Server Test Project (1)
        • TIL (3)
  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
Beankong_
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๋ฉ€๋ฆฌ ๋›ฐ๊ธฐ(C++)
์ƒ๋‹จ์œผ๋กœ

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