基準時間限制: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
輸出符合條件的最小的m。input示例
4output示例
100搜尋+同餘定理剪枝、
每次入隊 (隊首*10+0/1)%n 的點,若x%n!=0,則abcdx%n!=0,
所以記錄每次的餘數,已經出現過的就不能出解不用入隊了
1 #include 2 #include 34const
int n(1e6+5);5
intpre[n],ans[n],n;
6 std::queueque;78
void cout(intx)9
1415
intpresist()
1630
if(!pre[v])
3136 v=(u*10+1)%n;
37if(v==0)38
43if(!pre[v])
4449}50
return0;
51}5253
int aptal=presist();
54int main()
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,電腦直接宕機了 電腦效能太差 沒辦法啊!開機重啟,中間又花費了很多時間,我不死心,又重新測...