#include<stdio.h>
int main()
{
int num = 97;
int result;
printf("1\n3\n5\n7\n9\n20\n31\n42\n53\n64\n75\n86\n97\n");
result = num;
while (num < 10000)
{
while (num >10)
{
result += num % 10;
num = num / 10;
}
result += num;
num = result;
printf("%d\n", result);
}
}
처음에 문제 이해를 잘 못해서 어떤 숫자의 셀프넘버를 계속 올라가면서 구하는 함수를 만들었다...
문제 이해가 어렵군..
#include<stdio.h>
int check_selfnum(int a)
{
int result;
int tmp = a;
int i = 1;
while (i <=a)
{
tmp = i;
result = i;
while (tmp >= 10)
{
result += tmp % 10;
tmp = tmp / 10;
}
result += tmp;
if (result == a)
return (0);
i++;
}
return (1);
}
int main()
{
int i = 19;
printf("1\n3\n5\n7\n9\n");
while (i <= 10000)
{
if (check_selfnum(i))
printf("%d\n", i);
i++;
}
}
이문제는 풀면서 재미있었다ㅎㅎㅎㅎ
이 글은 코딩 꼬꼬마 시절에 푼 문제를 보관한 글로 2022. 3. 2. 12:01에 작성된 글을 옮긴 글입니다.
728x90
'알고리즘 기초시절' 카테고리의 다른 글
백준 재귀함수가 뭔가요?17478번(C++) (0) | 2023.01.03 |
---|---|
백준 한수문제 1065번문제 (0) | 2023.01.03 |
백준 8958(C) strlen함수사용 (0) | 2023.01.03 |
백준 A+B-4 문제 10951번 EOF (0) | 2023.01.03 |
백준 11655번 ROT13(C++) (0) | 2022.12.30 |