Poj1426 DFS模板题

Posted dreaminpal

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Poj1426 DFS模板题相关的知识,希望对你有一定的参考价值。

Find The Multiple

Time Limit: 1000MS   Memory Limit: 10000K
Total Submissions: 51502   Accepted: 21541   Special Judge

题目链接:http://poj.org/problem?id=1426

Description

Given a positive integer n, write a program to find out a nonzero multiple m of n whose decimal representation contains only the digits 0 and 1. You may assume that n is not greater than 200 and there is a corresponding m containing no more than 100 decimal digits.

Input

The input file may contain multiple test cases. Each line contains a value of n (1 <= n <= 200). A line containing a zero terminates the input.

Output

For each value of n in the input print a line containing the corresponding value of m. The decimal representation of m must not contain more than 100 digits. If there are multiple solutions for a given value of n, any one of them is acceptable.

Sample Input

2
6
19
0

Sample Output

10
100100100100100100
111111111111111111

题意:输入一个数n,求只有0和1的数并且还是n的倍数的数是多少

思路:直接dfs搜,暴力搜

#include <iostream>


using namespace std;

typedef unsigned long long ULL;

int n;
bool flag = false;

void DFS(int step, ULL t) 
    if(step > 19 || flag)
    return;
    if (t % n == 0) 
        cout << t << endl;
        flag = true;
        return;
    
    DFS(step + 1, 10 * t);
    DFS(step + 1, 10 * t + 1);


int main() 
    while (cin >> n)     
        if (!n)    return 0;
        flag = false;
        DFS(1, 1);
    
    return 0;

 

以上是关于Poj1426 DFS模板题的主要内容,如果未能解决你的问题,请参考以下文章

20200202 POJ - 3126 Prime Path POJ - 1426 Find The Multiple

POJ 1330(LCA模板)

POJ1742(多重部分和问题:模板题)

[dfs] aw1112. 迷宫(dfs连通性模型+模板题)

线段树模板加模板题POJ3468

[dfs] aw1116. 马走日(dfs搜索顺序+模板题)