Find The Multiple
阿新 • • 發佈:2018-02-28
sig name nbsp algorithm amp ret str main unsigned
題意:給定一個n找十進制只包含0 1 並且為n的倍數的數,註意數據範圍就可以了,dfs不難理解
代碼如下:
#include<stdio.h> #include<string.h> #include<math.h> #include<algorithm> using namespace std; typedef unsigned long long ll; bool vis; void dfs(ll x,int n,int k) { if(vis) return ; if(x%n==0) { vis=true; printf("%llu\n",x);//無符號longnlong輸出用llu,我用lld答案錯誤了 return ; } if(k==19) return ; dfs(x*10,n,k+1); dfs(x*10+1,n,k+1); } int main() { int m; while(scanf("%d",&m),m!=0) { vis=false; dfs(1,m,0); } }
Find The Multiple