POJ1426 Find The Multiple
2014-08-30 00:04
399 查看
模拟BFS解法+DFS解法
BFS:
DFS:
BFS:
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int mod[524286]; int main() { int n; //freopen("d:\\test.txt","r",stdin); while(cin>>n&&n) { mod[1]=1%n; int i; for(i=2;mod[i-1]!=0;i++) { mod[i]=(mod[i/2]*10+i%2)%n; //模拟BFS的双入口搜索 } i--; int j=0; while(i) { mod[j++]=i%2; i/=2; } while(j) { cout<<mod[--j]; } cout<<endl; } return 0; }
DFS:
#include<iostream> #include<cstring> #include<cstdio> using namespace std; int k; bool dfs(int cnt,long long sum) { if(cnt > 18) return false; if(sum % k == 0) { printf("%lld\n",sum); return true; } if(dfs(cnt+1,sum*10+1)) return true; if(dfs(cnt+1,sum*10)) return true; return false; } int main() { //freopen("d:\\test.txt","r",stdin); while(scanf("%d",&k) != EOF) { if(k == 0) break; dfs(0,1); } return 0; }
相关文章推荐
- Poj1426 Find The Multiple (BFS)
- POJ1426 Find The Multiple
- poj1426 find the multiple
- Find The Multiple(POJ1426)(入门)
- POJ1426-Find The Multiple
- ZOJ1530 POJ1426 Find The Multiple 广度优先搜索,ZOJ可以AC,POJ给我TLE了。。。
- POJ1426-Find The Multiple
- POJ1426 Find The Multiple
- POJ1426 Find The Multiple(E)
- POJ1426:Find The Multiple(BFS)
- POJ1426: Find The Multiple(bfs,同余定理)
- poj1426 Find The Multiple
- poj1426 Find The Multiple
- (POJ1426)Find The Multiple <BFS 大数模>
- POJ1426 Find The Multiple —— BFS
- BFS POJ1426 Find The Multiple
- UVALive2701 UVA1189 POJ1426 ZOJ1530 Find The Multiple【BFS】
- poj1426 Find The Multiple
- poj1426 Find The Multiple
- poj1426 Find The Multiple