Advertisement
simeonshopov

Josephus Permutation

Jan 21st, 2020
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.76 KB | None | 0 0
  1. people = [int(x) for x in  input().split()]
  2. k = int(input())
  3. output = []
  4. idx = k - 1
  5.  
  6. while len(people) > 1:
  7.   output.append(people.pop(idx))
  8.   idx = (idx + k - 1) % len(people)
  9. else:
  10.   output.append(people[0])
  11.  
  12. print(str(output).replace(' ', ''))
  13.  
  14. ########################################
  15. nums = [x for x in input().split()]
  16. count = int(input())
  17. x = len(nums)
  18. new = []
  19.  
  20. def loop_till_die(cnt, new_new: list, nums_lst: list):
  21.     while len(new_new) < x:
  22.         for y in range(cnt):
  23.             elem = nums_lst.pop(0)
  24.             nums_lst.append(elem)
  25.         new_elem = nums_lst.pop(len(nums_lst) - 1)
  26.         new_new.append(new_elem)
  27.     return new_new
  28.  
  29. new = loop_till_die(count, new, nums)
  30. print('[' + ','.join([str(x) for x in new]) + ']')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement