glowing713
Frontend-Deep-Dive
glowing713
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (97)
    • Languages (11)
      • JavaScript ๐Ÿ’› (3)
      • Python ๐Ÿ (4)
      • Java โ˜•๏ธ (3)
      • Swift ๐Ÿงก (1)
    • Computer_Science (1)
      • Computer_Network ๐Ÿ•ธ (1)
    • Web_Frontend (4)
      • Vue.js (1)
    • Problem_Solving (76)
    • Server (1)
      • Spring ๐Ÿ€ (1)
    • AI (2)
      • NLP ๐Ÿ—ฃ (1)
      • AI_Math โž— (1)
    • ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊พธ๋ฏธ๊ธฐ โœŒ (1)
    • ์ƒ๊ฐ์ •๋ฆฌ โœ๐Ÿป (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ๐Ÿง‘๐Ÿปโ€๐Ÿ’ปGithub

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

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ๋™์ ๊ณ„ํš๋ฒ•
  • c++
  • Algorithm
  • Python
  • BOJ
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • 2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ
  • Stack
  • Java
  • ์ด๋ถ„ํƒ์ƒ‰
  • Baekjoon
  • binary search
  • ps
  • brute-force
  • boostcampaitech
  • bfs
  • DP
  • mst
  • ์™„์ „ํƒ์ƒ‰
  • ์นด์นด์˜ค ๊ธฐ์ถœ

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
glowing713

Frontend-Deep-Dive

[BOJ] ๋ฐฑ์ค€ 11055 ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„ ์ˆ˜์—ด / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)
Problem_Solving

[BOJ] ๋ฐฑ์ค€ 11055 ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„ ์ˆ˜์—ด / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)

2020. 4. 27. 02:18

์ด๋ฏธ์ง€๋ฅผ ํด๋ฆญํ•˜๋ฉด ๋ฌธ์ œ ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.


 

 

๐Ÿ’ฃ ๋ฌธ์ œ ์ดํ•ด

 

 

์ˆ˜์—ด A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} ์ธ ๊ฒฝ์šฐ ํ•ฉ์ด ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„ ์ˆ˜์—ด์€

 

A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} ์ด๊ณ , ํ•ฉ์€ 113์ด๋‹ค.

 

 

๋™์  ๊ณ„ํš๋ฒ•(Dynamic Programming) ๋ฐฉ์‹์„ ์‚ฌ์šฉํ–ˆ๋‹ค.

 

 

๐Ÿ’ญ ํ’€์ด ๊ณผ์ •

 

 

์•ž์˜ ๋ฌธ์ œ 11053๋ฒˆ ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด ๊ณผ ๊ฑฐ์˜ ์œ ์‚ฌํ•˜๋‹ค.

 

 

๋™์  ๊ณ„ํš๋ฒ• ํ’€์ด

 

 

์ž‘์„ฑ ์–ธ์–ด: C++

 

#include <cstdio>


int biggestIncreasingSeq (int arr[][1010], int size) {
    int sumMax = 0, l_result = 0;
    
    for (int i = 0; i < size; ++i) {
        for (int j = 0; j < i; ++j) {
            if (arr[0][i] > arr[0][j]) {
                sumMax = arr[1][j] > sumMax ? arr[1][j] : sumMax;
            }
        }
        arr[1][i] = sumMax + arr[0][i];
        if (arr[1][i] > l_result) {
            l_result = arr[1][i];
        }
        sumMax = 0;
    }
    
    return l_result;
}

int main() {
    int seqArr[2][1010] = {0,};
    int numCnt = 0, result = 0;
    
    scanf("%d", &numCnt);
    
    for (int i = 0; i < numCnt; ++i) {
        scanf("%d", &seqArr[0][i]);
    }
    
    result = biggestIncreasingSeq(seqArr, numCnt);
    printf("%d\n", result);
    
    return 0;
}

 

 

 

์ด๋ฒˆ์—๋Š” ์ˆ˜์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ธฐ๋กํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ˆ˜์˜ ํ•ฉ์„ ๊ธฐ๋กํ•˜๊ณ , ๋งค๋ฒˆ ์ตœ๋Œ€ ํ•ฉ์„ ๊ฐฑ์‹ ํ•œ๋‹ค.

 

 

sumMax: 0,  result: 1

1 100 2 50 60 3 5 6 7 8
1                  

 

์ฒซ ๋ฒˆ์งธ ์ˆ˜๋Š” ์ž๊ธฐ ์ž์‹  ๋ฐ–์— ์—†์œผ๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 1 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 1 ์ด๋‹ค.

 

 

 

sumMax: 1,  result: 101

1 100 2 50 60 3 5 6 7 8
1 101                

 

๋‘ ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 1 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 101 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 101 ์ด๋‹ค.

 

 

 

sumMax: 1,  result: 101

1 100 2 50 60 3 5 6 7 8
1 101 3              

 

์„ธ ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 1 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 3 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 101 ์ด๋‹ค.

 

 

 

sumMax: 3,  result: 101

1 100 2 50 60 3 5 6 7 8
1 101 3 53            

 

๋„ค ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 3 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 53 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 101 ์ด๋‹ค.

 

 

 

sumMax: 53,  result: 113

1 100 2 50 60 3 5 6 7 8
1 101 3 53 113          

 

๋‹ค์„ฏ ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 53 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 113 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 113 ์ด๋‹ค.

 

 

 

sumMax: 3,  result: 113

1 100 2 50 60 3 5 6 7 8
1 101 3 53 113 6        

 

์—ฌ์„ฏ ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 3 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 6 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 113 ์ด๋‹ค.

 

 

 

sumMax: 6,  result: 113

1 100 2 50 60 3 5 6 7 8
1 101 3 53 113 6 11      

 

์ผ๊ณฑ ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 6 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 11 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 113 ์ด๋‹ค.

 

 

 

sumMax: 11,  result: 113

1 100 2 50 60 3 5 6 7 8
1 101 3 53 113 6 11 17    

 

์—ฌ๋Ÿ ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 11 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 17 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 113 ์ด๋‹ค.

 

 

 

sumMax: 17,  result: 113

1 100 2 50 60 3 5 6 7 8
1 101 3 53 113 6 11 17 24  

 

์•„ํ™‰ ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 17 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 24 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 113 ์ด๋‹ค.

 

 

 

sumMax: 24,  result: 113

1 100 2 50 60 3 5 6 7 8
1 101 3 53 113 6 11 17 24  

 

์—ด ๋ฒˆ์งธ ์ˆ˜๋Š” ๋”ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํ•ฉ์ด ํฐ ๊ฒƒ์ด 24 ์ด๋ฏ€๋กœ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์ด 32 ์ด๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ์€ 113 ์ด๋‹ค.

 

 

๊ฐ€์žฅ ํฐ ์ฆ๊ฐ€ ๋ถ€๋ถ„์ˆ˜์—ด ํ•ฉ์€ 113 ์ด ๋œ๋‹ค.

 

 

 

 

๐Ÿ† ๋ฐฐ์šด ์ 

 

 

์—ญ์‹œ ๋น„์Šทํ•œ ์œ ํ˜•์„ ์ ‘ํ•˜๋ฉฐ ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•œ ๋ฌธ์ œ์ด๋‹ค.

 

๋งŽ์ด ํ’€์–ด๋ณด๋Š” ๊ฒƒ์ด ํž˜์ด๋ผ๋Š” ๊ฒƒ์„ ์‹ค๊ฐํ•˜๊ฒŒ ๋œ๋‹ค.

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

'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ] ํŠœํ”Œ  (0) 2020.05.01
[2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ] ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„  (0) 2020.05.01
[BOJ] ๋ฐฑ์ค€ 11053 ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)  (0) 2020.04.24
[BOJ] ๋ฐฑ์ค€ 9251 LCS / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)  (0) 2020.03.14
[BOJ] ๋ฐฑ์ค€ 12865 ํ‰๋ฒ”ํ•œ ๋ฐฐ๋‚ญ / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)  (0) 2020.03.12
    'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ] ํŠœํ”Œ
    • [2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ] ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„
    • [BOJ] ๋ฐฑ์ค€ 11053 ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)
    • [BOJ] ๋ฐฑ์ค€ 9251 LCS / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)
    glowing713
    glowing713

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