簡單 時間限制:3 s記憶體限制:256 MB

Online Judge - 10190 - Divide, But Not Quite Conquer!

來源代碼:UVa
數學模擬CPE歷屆試題CPE一星
前往提交 ↓

Your goal in this problem is to divide a certain integer n by another integer m until n = 1, obtaining a sequence of numbers. Lets call a[i] each number of this sequence, and let's say it has k numbers (i.e. you must do k − 1 succesive divisions to reach n = 1). You can only have this sequence if the following restrictions are met:

  • a[1] = n, a[i] = a[i − 1] ÷ m, \text{for all }1 < i ≤ k

  • a[i] \text{ is divisible by }m \text{(that is,} a[i]\text{ mod }m = 0)\text{ for all }1 ≤ i < k

  • a[1] > a[2] > a[3] > . . . > a[k]

For instance, if n = 125 and m = 5, you have 125, 25, 5 and 1 (you did 3 divisions: 125/5, 25/5 and 5/5). So, k = 4, a[1] = 125, a[2] = 25, a[3] = 5and a[4] = 1. If n = 30 and m = 3, you have 30, 10, 3 and 1. But a[2] = 10, and 10 mod 3 = 1, so there is no sequence because it violates restriction 2. When the sequence doesn't exist we think it's not fun and, thus, very boring!

輸入說明

The input will consist on an arbitrary number of lines. Each line will consist of two non-negative integers n, m which are both less than 2000000000. You must read until you reach the end of file.

輸出說明

資料格式說明

For each pair n, m you must print the correspondent sequence a (as defined above) in a single line, with each adjacent numbers of the sequence separated by a single space. In the case the sequence doesn’t exist because it violates some restriction, just print the phrase ‘Boring!’ in a single line (without the quotes).

輸入輸出範例

範例 1

範例輸入
125 5
30 3
80 2
81 3
範例輸出
125 25 5 1
Boring!
Boring!
81 27 9 3 1

範例 2

範例輸入
2 2
64 4
36 6
12 2
範例輸出
2 1
64 16 4 1
36 6 1
Boring!

範例 3

範例輸入
0 0
1 2
16 1
2 3
64 2
54 3
範例輸出
Boring!
Boring!
Boring!
Boring!
64 32 16 8 4 2 1
Boring!
開啟討論
開啟紀錄

登入後即可撰寫程式、測試範例及提交解答。

登入