Advertisement
Guest User

Untitled

a guest
Mar 25th, 2019
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.80 KB | None | 0 0
  1. def StoppingRuleKLZ(S, r):
  2. global markedCards
  3. n = len(S)
  4. j = (n-KB[r % len(KB)]) % n
  5. r=r%n
  6. if len(markedCards) < math.ceil((n-1)/2):
  7. if not ((S[r] in markedCards) or (S[j] in markedCards)):
  8. markedCards.append(S[r])
  9. else:
  10. if ((not (S[r] in markedCards)) and (S[j] in markedCards)) or ((not (S[r] in markedCards)) and r == j):
  11. markedCards.append(S[r])
  12. if len(markedCards) == n:
  13. return False
  14. else:
  15. return True
  16. def KSASST(n, t):
  17. global K
  18. S = list(range(n))
  19. j = 0
  20. r= 0
  21. while StoppingRuleKLZ(S,r):
  22. for i in range(t+1):
  23. j = (j+S[i % n]+KB[i % len(KB)]) % n
  24. temp = S[i % n]
  25. S[i % n] = S[j % n]
  26. S[j % n]=temp
  27. r+=1
  28. return S
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement