代码如下——
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n, i, a, m, j;
int count = 0;
cin >> n;
for (i = 0; i < n; i++)
{
cin >> a >> m;
count = 0;
if (a >= 2 && a <= 1000000000 && m >= 0 && m <= 100)
{
for (j = 2; j <= sqrt(a); j++)
{
if (a % j == 0)
{
if (a / j != j)
{
count = count + 2;
}
else
{
count++;
}
}
}
if (count <= m)
{
cout << "yes" << endl;
}
else
{
cout << "no" << endl;
}
}
}
return 0;
}
此次题目判断对时间有限制
#include<iostream>
using namespace std;
int main()
{
int n;
cin >> n;
while (n--)
{
int a, m, cnt=0;
cin >> a >> m;
for (int i = a-1; i > 1; i--)
{
if (a % i == 0)cnt++;
}
if (m >= cnt)cout << "yes" << endl;
else cout << "no" << endl;
}
}
如果你的写法跟我上面代码一样 就会出现
直接破防