https://www.acmicpc.net/problem/4673
4673번: 셀프 넘버
셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때,
www.acmicpc.net
#include <iostream>
#include <string>
#define MAX_NUM 10000
using namespace std;
int selfNum(int num)
{
int sum = num;
int d = num;
do{
sum += d%10;
d = d/10;
}while(d!=0);
return sum;
}
int main(void)
{
int n = 1;
bool selfChk[MAX_NUM+1] = {false};
for( int i=1; i <= MAX_NUM; i++ )
{
int ret = selfNum(i);
if( ret <= MAX_NUM )
selfChk[ret] = true;
}
for( int i=1; i <= MAX_NUM; i++ )
{
if( !selfChk[i] )
cout << i << endl;
}
return 0;
}
self number 구하는거랑 배열에 결과 저장하는거만
할 수 있으면 금방할 수 있을 것 같은 문제다
금욜에는 집중이 진짜 안된다
간단한건데 몇분이 걸린거징ㅎㅎ;
'CS > 백준' 카테고리의 다른 글
백준 11720번: 숫자의 합(Python) (0) | 2021.06.01 |
---|---|
백준 11654번: 아스키 코드 (Python) (0) | 2021.06.01 |
백준 8958번: OX 퀴즈 (C++) (0) | 2021.05.21 |