Guest User

Untitled

a guest
Feb 21st, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.44 KB | None | 0 0
  1. ## script
  2.  
  3. class User
  4. MAIL_SERVERS = 3
  5.  
  6. def initialize(username)
  7. @username = username
  8. end
  9.  
  10. def mail_bucket
  11. 1 + (@username.split(//).inject(0) {|sum, x| sum = ((sum << 3) ^ (sum >> 5)) ^ x[0] } % MAIL_SERVERS)
  12. end
  13. end
  14.  
  15. while username = gets
  16. username.chomp!
  17. user = User.new(username)
  18. puts user.mail_bucket
  19. end
  20.  
  21. ## results
  22.  
  23. $ cat usernames.txt | ruby hash_test.rb | sort | uniq -c
  24. 1121 1
  25. 1146 2
  26. 1084 3
Add Comment
Please, Sign In to add comment