| Time Limit: 1000MS | Memory Limit: 10000K | |||
| Total Submissions: 20297 | Accepted: 8236 | Special Judge | ||
Description
Input
Output
Sample Input
2 6 19 0
Sample Output
10 100100100100100100 111111111111111111
#include <iostream>
#include <stdio.h>
#include <string>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <queue>
#define N 1000009
#define ll __int64
using namespace std;
int n;
int flag;
void dfs(unsigned ll x,int k)//注意使用无符号64位整数
{
if(flag) return;
if(x%n==0)
{
printf("%I64u\n",x);
flag=1;
return;
}
if(k==19) return;//最大19位
dfs(x*10,k+1);
dfs(x*10+1,k+1);
}
int main()
{
while(~scanf("%d",&n))
{
if(n==0) break;
flag=0;
dfs(1,0);
}
return 0;
}
原文:http://blog.csdn.net/wust_zjx/article/details/45772217