Guest User

Untitled

a guest
Dec 10th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. def findSchedules(workHours, dayHours, pattern):
  2. totalHours = 0
  3. result = []
  4. for c in pattern:
  5. if c != '?':
  6. totalHours = totalHours + int(c)
  7.  
  8. diff = workHours - totalHours
  9. constructResult(list(pattern), 0, diff, dayHours, result)
  10. return result
  11.  
  12.  
  13. def constructResult(patternArr, index, diff, dayHours, result):
  14. if index == len(patternArr):
  15. if diff == 0:
  16. result.append(''.join(patternArr))
  17. return
  18.  
  19. if patternArr[index] == '?':
  20. for i in range(0, dayHours+1):
  21. c = patternArr[index]
  22. patternArr[index] = str(i)
  23. constructResult(patternArr, index+1, diff-i, dayHours, result)
  24. patternArr[index] = c
  25. else:
  26. constructResult(patternArr, index+1, diff, dayHours, result)
Add Comment
Please, Sign In to add comment