Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 103    Accepted Submission(s): 49


Problem Description
Given a positive integer n, determine if n is an infinite decimal in decimal base. If the answer is yes, print “Yes” in a single line, or print “No” if the answer is no.
 

 

Input
The first line contains one positive integer T (1 ≤ T ≤ 100), denoting the number of test cases.
For each test case:
Input a single line containing a positive integer n (1 ≤ n ≤ 100).
 

 

Output
Output T lines each contains a string “Yes” or “No”, denoting the answer to corresponding test case.
 

 

Sample Input
2 5 3
 

 

Sample Output
No Yes
Hint
1/5 = 0.2, which is a finite decimal. 1/3 = 0.333 · · · , which is an infinite decimal.
 

 

Source

题解:
问1/n是否是有限小数,队友很快反应过来找n是否含有非2和非5的因子。
参考代码:
 
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n;
        scanf("%d",&n);
        if(n%5==0)
        {
            do{
                n/=5;
            }while(n%5==0);
        }
        if(n%2==0)
        {
            do{n/=2;}while(n%2==0);
        }
        if(n==1) puts("No");
        else puts("Yes");
    }
    return 0; 
}
View Code

 

相关文章:

  • 2022-12-23
  • 2021-05-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2021-10-18
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-02-12
  • 2021-09-26
  • 2022-12-23
  • 2022-12-23
  • 2021-08-05
  • 2022-02-27
相关资源
相似解决方案