題目連結

https://zerojudge.tw/ShowProblem?problemid=a741

https://onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=13&problem=1042

參考文章

X

本題要點

用遞迴來處理 n,如果大於 10000000(”kuti”) 就切割,將 n // 10000000(”kuti”) 並且重新呼叫函式

下方有範例測資(來自討論區z3x56 (二信阿資)#9512: 補充範例 ←可以點連結進去看~)

如果六個範例測資都能過,題目理論上可以通過(我是這樣)

需要特別留意的是範例一與二

像是範例一的460000409000 正確輸出為46 hajar kuti 4 lakh 9 hajar

而不是 46 hajar 0 shata 0 kuti 4 lakh 9 hajar 0 shata

可以理解成有 46 hajar 個 kuti, 4 個 lakh, 9 個 hajar

也就是 46000(46 * hajar) 個 10000000(kuti)

"""
1. 460000409000
2. 467000408900
3. 467800456780
4. 100000000000000 X
5. 999999999999999
6. 0
輸出
1. 46 hajar kuti 4 lakh 9 hajar
2. 46 hajar 7 shata kuti 4 lakh 8 hajar 9 shata
3. 46 hajar 7 shata 80 kuti 4 lakh 56 hajar 7 shata 80
4. 1 kuti kuti
5. 9 kuti 99 lakh 99 hajar 9 shata 99 kuti 99 lakh 99 hajar 9 shata 99
6. 0
"""

用遞迴可以更好地去處理每一段大於等於三位數的 10000000(kuti)~

我將計算好的 Bangla Numbers 紀錄在 result 當中

最後用 join 組合輸出