fork download
  1. liczby = {'1':'jeden','2':'dwa','3':'trzy','4':'cztery','5':'piec','6':'szesc','7':'siedem','8':'osiem',
  2. '9':'dziewiec','10':'dziesiec','11':'jedenascie','12':'dwanascie','13':'trzynascie',
  3. '14':'czternascie','15':'pietnascie','16':'szesnascie','17':'siedemnascie','18':'osiemnascie',
  4. '19':'dziewietnascie','20':'dwadziescia','30':'trzydziesci','40':'czterdziesci','50':'piecdziesiat',
  5. '60':'szescdziesiat','70':'siedemdziesiat','80':'osiemdziesiat','90':'dziewiedziesiat','100':'sto',
  6. '200':'dwiescie','300':'trzysta','400':'czterysta','500':'piecset','600':'szecset',
  7. '700':'siedemset','800':'osiemset','900':'dziewiecset'}
  8.  
  9. def nomi(x):
  10. w = ''
  11. s = x//100
  12. if s>0:
  13. tmp = s*100
  14. w+=liczby[str(tmp)]+" "
  15. x-=tmp
  16. s =x//10
  17. if s>1:
  18. tmp = s*10
  19. w+=liczby[str(tmp)]+" "
  20. x-=tmp
  21. if x>0:
  22. w+=liczby[str(x)]+" "
  23. return w
  24.  
  25. t = int(input())
  26. for i in range(t):
  27. x=int(input())
  28. w=''
  29.  
  30. s = x//(10**12)
  31. #print(s)
  32. if s>0:
  33. w+=nomi(s)+"bln. "
  34. x-=s*10**12
  35. s = x//(10**9)
  36. #print(s)
  37. if s>0:
  38. w+=nomi(s)+"mld. "
  39. x-=s*10**9
  40. s = x//(10**6)
  41. #print(s)
  42. if s>0:
  43. w+=nomi(s)+"mln. "
  44. x-=s*10**6
  45. s = x//(10**3)
  46. #print(s)
  47. if s>0:
  48. w+=nomi(s)+"tys. "
  49. x-=s*10**3
  50. if x>0:
  51. w+=nomi(x)
  52. print(w[:-1])
  53.  
Success #stdin #stdout 0.02s 9356KB
stdin
7
1
12
345
1459
123456789
999999999999999
100001
stdout
jeden
dwanascie
trzysta czterdziesci piec
jeden tys. czterysta piecdziesiat dziewiec
sto dwadziescia trzy mln. czterysta piecdziesiat szesc tys. siedemset osiemdziesiat dziewiec
dziewiecset dziewiedziesiat dziewiec bln. dziewiecset dziewiedziesiat dziewiec mld. dziewiecset dziewiedziesiat dziewiec mln. dziewiecset dziewiedziesiat dziewiec tys. dziewiecset dziewiedziesiat dziewiec
sto tys. jeden