码迷,mamicode.com
首页 > 其他好文 > 详细

UVa 725 Division

时间:2015-03-19 07:45:15      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:

题意:求满足形如abcde/efghi=n的五位数

从i=1234(因为可以有前导0)到98765枚举,(i*n)/i=n,再判断各个位数是否相同即可

技术分享
 1 #include<iostream>  
 2 #include<cstdio>  
 3 #include<cstring> 
 4 #include <cmath> 
 5 #include<stack>
 6 #include<vector>
 7 #include<map> 
 8 #include<queue> 
 9 #include<set>
10 #include<algorithm>  
11 using namespace std;
12 
13 typedef long long LL;
14 int hash[1005];
15 int a[1005],b[1005];
16 
17 
18 int main(){
19     int n,i,j,k,p,q,t,ans;
20     int ok=1;
21     while(scanf("%d",&n)!=EOF&&n){
22         int flag=0,ans=0;
23         if(ok) ok=0;
24         else printf("\n");
25         for(i=1234;i<=98765;i++){
26             memset(hash,0,sizeof(hash));
27             if(i*n>100000) break;
28             
29             a[1]=i/10000;hash[a[1]]++;
30             a[2]=i/1000%10;hash[a[2]]++;
31             a[3]=i/100%10;hash[a[3]]++;
32             a[4]=i/10%10;hash[a[4]]++;
33             a[5]=i%10;hash[a[5]]++;
34             
35             int m=i*n;
36             
37             b[1]=m/10000;hash[b[1]]++;
38             b[2]=m/1000%10;hash[b[2]]++;
39             b[3]=m/100%10;hash[b[3]]++;
40             b[4]=m/10%10;hash[b[4]]++;
41             b[5]=m%10;hash[b[5]]++;
42             
43             for(t=0;t<=9;t++){
44                 if(hash[t]!=1) break;
45             }
46             
47             if(t<=9) flag=0;
48             else{
49                 printf("%05d / %05d = %d\n",m,i,n);
50                 ans++;
51             }                        
52         }
53         
54         if(flag==0&&ans==0) printf("There are no solutions for %d.\n",n);
55     }
56     return 0;
57 }
View Code

 

 

 

这道题目从tle,tle,tle,到ce,到wa,= =555555555555

 

go---go---go

UVa 725 Division

标签:

原文地址:http://www.cnblogs.com/wuyuewoniu/p/4349338.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!