#include <stdio.h>
/*
생성자를 2로 나눴을 때, 2곱하기?
*/
int main(void)
{
unsigned char source[10000];
scanf("%s", &source);
unsigned char len;
len = strlen(source);
int size = atoi(source);
if (len <= 3) {
for (int i = (size / 2); i < size; i++) {
if ((i + (i / 100) + ((i%100)/10) + (i % 10)) == size)
{
printf("%d", i);
return 0;
}
}
}
else if (len <= 7) {
for (int i = (size / 10)*9; i < size; i++) {
if ((i + (i / 1000000) + ((i % 1000000) / 100000) + ((i % 100000) / 10000) + ((i % 10000) / 1000)+ ((i % 1000) / 100)+ ((i % 100) / 10)+(i % 10)) == size)
{
printf("%d", i);
return 0;
}
}
}
printf("0");
}
각 자리수를 제한하여 풀었습니다.
최소 시간을 위해서 숫자 자릿수에 대한 길이 제한을 했습니다.
'온라인 저지 > 백준 일반' 카테고리의 다른 글
백준 17478번 재귀함수가 뭔가요? [C언어] (0) | 2022.05.11 |
---|---|
백준 3034번 앵그리 창영 [C언어] (0) | 2022.05.11 |
백준 2798번 블랙잭 [C언어] - 브루트 포스 (0) | 2022.04.11 |
백준 11729번 하노이탑 이동 순서 [C언어] (0) | 2022.04.04 |
백준 2447번 별 찍기 -10 [C언어] (0) | 2022.04.02 |