Advertisement
Guest User

Untitled

a guest
Nov 29th, 2015
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.40 KB | None | 0 0
  1. from __future__ import print_function
  2.  
  3. mas = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
  4. rimc = [1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000]
  5. rims = ['I', 'IV', 'V', 'IX', 'X', 'XL', 'L', 'XC', 'C', 'CD', 'D', 'CM', 'M']
  6. def torim(x):
  7.     sans = ""
  8.     cur = len(rimc) - 1
  9.     while(x):
  10.         while (x >= rimc[cur]):
  11.             sans += rims[cur]
  12.             x -= rimc[cur]
  13.         cur -= 1
  14.     return sans
  15. def out(day, month, year):
  16.     #print(day, month, year)
  17.     #print(vek, quart)
  18.     print(torim(day), end = '.')
  19.     print(torim(month), end = '.')
  20.     print(torim(year))
  21.     exit(0)
  22. n = input()
  23. day, month, year = 0, 0, 0
  24.  
  25. dayinsqvek = (24 * 366 + 76 * 365) * 4 + 1
  26. dayinvek = (24 * 366 + 76 * 365)
  27. dayinquart = (3 * 365 + 366)
  28.  
  29. sqvek = n // dayinsqvek
  30. year += sqvek * 400
  31. if (n % dayinsqvek == 0):
  32.     out(31, 13, year)
  33. n -= sqvek * dayinsqvek
  34.  
  35. vek = n // dayinvek
  36. year += vek * 100
  37. if (n % dayinvek == 0):
  38.     out(31, 12, year)
  39. n -= vek * dayinvek
  40.  
  41. quart = n // dayinquart
  42. year += quart * 4
  43. if (n % dayinquart == 0):
  44.     out(31, 12, year)
  45. n -= quart * dayinquart
  46.  
  47. year += n // 365
  48. if (n % 365 == 0):
  49.     out(31, 12, year)
  50. n %= 365
  51. year += 1
  52. if (year % 4 == 0 and year % 100 != 0 or year % 400 == 0):
  53.     mas[1] += 1
  54. #print(n)
  55. for i in range(len(mas)):
  56.     #print(i, n)
  57.     if (n <= mas[i]):
  58.         out(n, i + 1, year)
  59.     else:
  60.         n -= mas[i]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement