백준 algorithm
백준 6679 - 싱기한 네자리 숫자
cosmohoo
2020. 2. 6. 19:33
반응형

-10진수의 숫자를 실제로 12진수와 16진수로 표현할 필요는 없다. 각 자리 숫자를 얻을 때마다 해당 값을 더해가며 값을 구할 수 있다.
-3개의 함수를 생성하여 간단하게 풀었다.
#include <iostream>
#include <vector>
#include <utility>
#include <algorithm>
using namespace std;
int find10(int N)
{ int tem=10;
int val=0;
while(N>0)
{
val+=N%tem;
N/=tem;
}
return val;
}
int find16(int N)
{
int tem=16;
int val=0;
while(N>0)
{
val+=N%tem;
N/=tem;
}
return val;
}
int find12(int N)
{
int tem=12;
int val=0;
while(N>0)
{
val+=N%tem;
N/=tem;
}
return val;
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
for(int i=1000; i<=9999; i++)
{
if(find10(i)==find12(i) && find12(i) == find16(i) && find16(i)==find10(i))
cout<< i <<'\n';
}
}
반응형