SDJ( 수돈재 아님 ㅎ )

[C++] 2688 - 줄어들지 않아 본문

알고리즘/Backjoon

[C++] 2688 - 줄어들지 않아

ShinDongJun 2020. 1. 13. 16:38

문제 링크 : https://www.acmicpc.net/problem/2688

 

2688번: 줄어들지 않아

문제 어떤 숫자가 줄어들지 않는다는 것은 그 숫자의 각 자리 수보다 그 왼쪽 자리 수가 작거나 같을 때 이다. 예를 들어, 1234는 줄어들지 않는다.  줄어들지 않는 4자리 수를 예를 들어 보면 0011, 1111, 1112, 1122, 2223이 있다. 줄어들지 않는 4자리수는 총 715개가 있다. 이 문제에서는 숫자의 앞에 0(leading zero)이 있어도 된다. 0000, 0001, 0002는 올바른 줄어들지 않는 4자리수이다. n이 주어졌을

www.acmicpc.net

 

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include<iostream>
 
using namespace std;
 
long long unsigned int dp[70][10]={1111111111};
long long unsigned int sum[70= {10};
int main(void)
{
    long long unsigned int S = 0;
 
    for(int i = 1; i <= 64++i)
    {
        S = 0;
        for(int j = 0; j < 10++j)
        {
            for(int z = 0; z <= j; ++z)
                dp[i][j] += dp[i-1][z];
            S += dp[i][j];
        }
        sum[i] = S;
    }
 
    int n;
    cin >> n;
    while(n--)
    {
        int tmp;
        cin >> tmp;
        cout << sum[tmp-1<< endl;
    }
    return 0;
}

'알고리즘 > Backjoon' 카테고리의 다른 글

[Python3] 1793 - 타일링  (0) 2020.01.13
[C] 2003 - 수들의 합 2  (0) 2020.01.13
[C++] 17478 - 재귀함수가 뭔가요?  (0) 2020.01.13
[C++] 14891 - 톱니바퀴  (0) 2020.01.13
[C++] 2170 - 선 긋기  (0) 2020.01.12
Comments