幸运数字III
题目描述
小李非常喜欢数字4和7,看到一个数字他就想快速计算出因子里面分别有几个4和7,但是智商捉急的他总是要算很久,喜欢编程的你能够帮助他吗?
输入
第一行一个整数n(3<=n<=2^60),表示给定的数字。
输出
两个用空格隔开的数字,分别表示给定数字的因子中4和7的个数。
样例输入
复制样例数据
112
样例输出
2 1
提示
112=447
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int main()
{
long long int n;
int x=0,y=0;
cin>>n;
while(n>3)
{
if(n%28==0)
{
x++;
y++;
n/=28;
}
else if(n%4==0)
{
x++;
n/=4;
}
else if(n%7==0)
{
y++;
n/=7;
}
else
{
break;
}
};
cout<<x<<" "<<y<<endl;
return 0;
}
一开始没有28,超时。