ETH官方钱包

切換
舊版
前往
大廳
主題

ZeroJudge - e566: 10190 - Divide, But Not Quite Conquer! 解題心得

Not In My Back Yard | 2019-12-17 22:04:25 | 巴幣 0 | 人氣 614

題目連結(jié):


題目大意:
給定兩非負整數(shù) n 、 m (皆小於 2000000000)。現(xiàn)有一數(shù)列 a,其有元素 a[1] = n 、a[2] = a[1] ÷ m 、 a[3] = a[2] ÷ m 、…… 、a[k] = 1 。

而 a 必須遵守以下規(guī)則:
a[i] 必須可被 m 整除(1 ≦ i < k);
a[1] > a[2] > …… > a[k] 。

試問,對於整數(shù)對 n 、m  ,其產(chǎn)生的數(shù)列 a 是否遵守規(guī)則。如果是,請輸出數(shù)列 a 的內(nèi)容;如果不是輸出「Boring!」。



範例輸入:
125 5
30 3
80 2
81 3


範例輸出:
125 25 5 1
Boring!
Boring!
81 27 9 3 1


解題思維:
先判斷是否 n ≦ 1 或是 m ≦ 1 ,這些情況會直接導致「Boring!」的狀態(tài)。

接著,試著產(chǎn)生數(shù)列 a。若中途有任何元素無法被 m 整除,就跳出。倘若數(shù)列 a 的最後一項是 1 ,則代表這數(shù)列正常(唯一一個可以是不被 m 所整除的),所以輸出其內(nèi)容;如果最後一項不是 1 ,則代表有其他的元素不被 m 整除,因此輸出「Boring!」。

此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。
追蹤 創(chuàng)作集

作者相關(guān)創(chuàng)作

相關(guān)創(chuàng)作

更多創(chuàng)作