ABOUT ME

์•Œ๊ณ ๋ฆฌ์ฆ˜, ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์šฉ ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹น~ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ๋Š” https://velog.io/@ows3090 ์— ์ž‘์„ฑํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

Today
Yesterday
Total
  • [BaekJoon] 2579๋ฒˆ : ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ
    SW Test/BaekJoon 2021. 4. 18. 19:58
    ๋ฐ˜์‘ํ˜•
    • ์ด ๊ธ€์€ c++๋กœ ํ’€์ด๋ฅผ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    ๋ฌธ์ œ

     

    ์˜ˆ์‹œ

     

    ํ’€์ด

    • DP๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.
    • ๊ธฐ์กด์˜ DP๋Š” 1์ฐจ์› ์ ํ™”์‹์„ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด, ์ด๋ฒˆ ๋ฌธ์ œ๋Š” 2์ฐจ์›๋ฐฐ์—ด์„ ์ด์šฉํ•œ ์ ํ™”์‹์„ ๊ตฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (์—ฐ์†์ ์œผ๋กœ 3๊ฐœ์˜ ๊ณ„๋‹จ์„ ๋ฐŸ๋Š”์ง€์— ๋Œ€ํ•œ ํŒ๋‹จ ๋•Œ๋ฌธ์—)
    • D[i][1] : i๋ฒˆ์งธ ๊ณ„๋‹จ๊นŒ์ง€ ํฌํ•จํ•˜์—ฌ ์—ฐ์†๋œ ๊ณ„๋‹จ ์ˆ˜๊ฐ€ 1์ธ ๊ฒฝ์šฐ, ์ฆ‰ D[i-1]์€ ๋ฐŸ์ง€ ์•Š๊ณ , D[i-2]๋ฅผ ๋ฐŸ์€ ๊ฒฝ์šฐ
    • D[i][2] : i๋ฒˆ์งธ ๊ณ„๋‹จ๊นŒ์ง€ ํฌํ•จํ•˜์—ฌ ์—ฐ์†๋œ ๊ณ„๋‹จ ์ˆ˜๊ฐ€ 2์ธ ๊ฒฝ์šฐ, ์ฆ‰ D[i-1]์„ ๋ฐŸ๊ณ  D[i]๋ฅผ ์—ฐ์†์ ์œผ๋กœ ๋ฐŸ์€ ๊ฒฝ์šฐ
    • ๋”ฐ๋ผ์„œ D[num][1]๊ณผ D[num][2] ์ค‘์— ์ตœ๋Œ“๊ฐ’์ด ๋‹ต์ด ๋ฉ๋‹ˆ๋‹ค.
    #include<iostream>
    #include<algorithm>
    using namespace std;
    
    
    int main(){
        ios::sync_with_stdio(0);
        cin.tie(0);
        
        int vec[350];
        int num;
        cin>>num;
        vec[0] = 0;
        
        for(int i=1;i<=num;i++){
            cin>>vec[i];
        }
        int d[350][3];
        
        d[0][1] = 0;
        d[0][2] = 0;
        d[1][1] = vec[1];
        d[1][2] = 0;
        
        for(int i=2;i<=num;i++){
            d[i][1] = max(d[i-2][1] , d[i-2][2])+vec[i];
            d[i][2] = d[i-1][1] + vec[i];
        }
        
        int result = d[num][1]>d[num][2]?d[num][1]:d[num][2];
        cout<<result;
    }
    • ์ถ”๊ฐ€๋กœ ๊ถ๊ธˆํ•œ ์ ์ด๋‚˜ ์ˆ˜์ •ํ•  ๋ถ€๋ถ„ ์žˆ์œผ๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š”.
    ๋ฐ˜์‘ํ˜•
Designed by Tistory.