51nod1109 01組成的倍數 資料結構

2021-07-09 15:05:06 字數 922 閱讀 7373

題目:

給定乙個自然數n,找出乙個m,使得m > 0且m是n的倍數,並且m的10進製表示,是由0和1組成的。求最小的m。

例如:n = 4,m = 100。

input

輸入1個數n。(1 <= n <= 10^6)
output

輸出符合條件的最小的m。
input示例

4
output示例

100

思路:因為n比較大,倍數肯定會超long long ,所以設計乙個陣列,記錄每一位的資料,和每一位的前面的位置下標即可,找到答案,dfs輸出即可。

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;

#define maxn 2000005

#define mod 1000000007

#define mem(a , b) memset(a , b , sizeof(a))

#define ll long long

#define inf 1000000000

struct node

ans[maxn];

bool vis[maxn];

int n , num;

void dfs(int pos)

dfs(res);

printf("%d" , ans[res].x);

}void bfs()

num++;}}

}}int main()

bfs();

}return 0;

}

51 nod 1109 01組成的N的倍數

1109 01組成的n的倍數 基準時間限制 1 秒 空間限制 131072 kb 分值 40 難度 4級演算法題 給定乙個自然數n,找出乙個m,使得m 0且m是n的倍數,並且m的10進製表示只包含0或1。求最小的m。例如 n 4,m 100。input 輸入1個數n。1 n 10 6 output ...

51Nod 1109 01組成的N的倍數

1109 01組成的n的倍數 基準時間限制 1 秒 空間限制 131072 kb 分值 40 難度 4級演算法題 給定乙個自然數n,找出乙個m,使得m 0且m是n的倍數,並且m的10進製表示只包含0或1。求最小的m。例如 n 4,m 100。input 輸入1個數n。1 n 10 6 output ...

51Nod 1109 01組成的N的倍數

題目鏈結 思路 一開始看的到這個題時,想都沒想直接乙個暴力上去了,結果很顯然。再後來做完後面的題,在回看這個題時,想到了廣搜。寫乙個簡單 沒剪枝 的廣搜,自己隨便測試一下,乙個9能測出來,然後直接就上了5個9,電腦直接宕機了 電腦效能太差 沒辦法啊!開機重啟,中間又花費了很多時間,我不死心,又重新測...