Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def calc(k, d, i) :
- res = ( (i - d + 1) * ((i - d + 1) + 1) )// 2
- for j in range(d, 7):
- if (j <= 5) :
- res -= k
- while (i % 7 != 0) :
- if (i % 7 <= 5) :
- res -= k
- i -= 1
- res -= (((i - 7) // 7) * 5) * k
- return res
- k, m, d = map(int, input().split())
- flag = False
- cnt = m
- for i in range(1, 1488):
- cnt -= i
- if ((i + d - 2) % 7 < 5):
- cnt += k
- if (cnt < 0):
- flag = True
- if (flag):
- print(i - 1)
- if (not flag):
- ll = 1
- rr = 7 * 10 ** 10
- while (rr - ll > 1) :
- mm =(ll + rr)// 2
- if (m >= calc(k, d, 7 * mm)):
- ll = mm
- else:
- rr = mm
- for i in range(max(d, 7 * (rr) - 100), max(d, 7 * rr + 100)):
- if (m < calc(k, d, i)) :
- print(i - d)
- break
Advertisement
Add Comment
Please, Sign In to add comment