본문 바로가기

알고리즘 풀이

백준 1019번 책 페이지

https://www.acmicpc.net/problem/1019


아래 답은... 해결한게 아님.. 아직 못품 ㅠㅠ


#include <iostream>

#include <cstdio>

#define MAX 1000000000

using namespace std;


long long page[MAX][11] = {0, };


int main()

{

    int remain = 0, num, n;

    

    scanf("%d", &n);


    for (int i = 1; i <= n; ++i) {

        num = i;

        

        while (num > 0) {

            remain = num % 10;

            page[i][remain] = page[i][remain] + 1LL;

            num /= 10;

            if (page[num][10] == 1) {

                for (int j = 0; j < 10; ++j) {

                    page[i][j] += page[num][j];

                }

                break;

            }

            

        }

    }

    

    

    return 0;

}

'알고리즘 풀이' 카테고리의 다른 글

백준 11650번 좌표 정렬하기  (0) 2017.12.22
나는 왜 코딩을 못할까  (0) 2017.12.21
백준 2193 이친수  (0) 2017.12.15
백준 1937번 욕심쟁이 판다  (0) 2017.12.11
(공통문제) n-queens  (0) 2017.12.09