题目描述
如果一个正整数的所有素因子均不超过 55,则它被称为正规数(Regular Number)。例如 6060 是一个正规数,因为 60=22⋅3⋅560=22⋅3⋅5,10001000 也是一个正规数,因为 1000=23⋅531000=23⋅53。前十五个正规数为:
1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 241, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24
给定一个正整数 𝑛n,请判定它是否是一个正规数。
输入格式
单个正整数:表示 𝑛n。
输出格式
- 如果 𝑛n 是正规数,输出
Regular Number
; - 如果不是,输出
Irregular Number
;
数据范围
- 对于 30%30% 的数据,1≤𝑛≤1051≤n≤105;
- 对于 100%100% 的数据,1≤𝑛≤1091≤n≤109。
样例数据
输入:
60
输出:
Regular Number
输入:
26
输出:
Irregular Number
详见代码:
#include<bits/stdc++.h>
using namespace std;
int n;
int main()
{
cin>>n;
while(n%2==0)
{
n=n/2;
}
while(n%3==0)
{
n=n/3;
}
while(n%5==0)
{
n=n/5;
}
if(n==1)
{
cout<<"Regular Number";
}
else
{
cout<<"Irregular Number";
}
return 0;
}