欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【暴力】Divison UVa 725(暴力入门之除法)

程序员文章站 2022-06-22 09:42:32
题目:给你一个数字n,用0~9,10个数字组成两个五位数,使得他们的商为n,按顺序输出所有结果。 分析:暴力。直接枚举第二个数字,范围(1000,100000),然后判断即可。 (根据刘汝佳紫皮) ......

题目:给你一个数字n,用0~9,10个数字组成两个五位数,使得他们的商为n,按顺序输出所有结果。

分析:暴力。直接枚举第二个数字,范围(1000,100000),然后判断即可。

(根据刘汝佳紫皮)

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int judge(int a,int b)
 4 {
 5     int used[11];
 6     memset(used,0,sizeof(used));
 7     if(b>100000) return 0;
 8     used[0]=1;
 9     while(a)
10     {
11         used[a%10]=1;
12         a/=10;
13     }
14     while(b)
15     {
16         used[b%10]=1;
17         b/=10;
18     }
19     int sum=0;
20     for(int i=0;i<10;i++)
21         sum+=used[i];
22     return (sum==10);
23 }
24 int main()
25 {
26     int n;
27     while(cin>>n)
28     {
29         int i,flag;
30         flag=0;
31         for(i=1234;i<100000;i++)
32         {
33             if(judge(i,i*n))
34             {
35                 flag=1;
36                 cout<<i*n<<"/"<<i<<"="<<n<<endl;
37             }
38         }
39         if(flag==0)
40         {
41             cout<<"no"<<endl;
42         }
43     }
44     return 0;
45 }