fork download
  1. f=->x,y{g=->z{z.chars.map{|c|z=~/#{c}/}};g[x]==g[y]}
  2.  
  3.  
  4. tests = [
  5.  
  6. ["AAL","EEL",true],
  7. ["ESTATE","DUELED",true],
  8. ["DUELED","ESTATE",true],
  9. ["XXX","YYY",true],
  10. ["CBAABC","DEFFED",true],
  11. ["RAMBUNCTIOUSLY","THERMODYNAMICS",true],
  12. ["DISCRIMINATIVE","SIMPLIFICATION",true],
  13.  
  14. ["AAL","ALL",false],
  15. ["AALl","AAL",false],
  16. ["SEE",",SAW",false],
  17. ["ANTS","PANTS",false],
  18. ["BANANA",",SERENE",false],
  19. ["BANANA",",SENSES",false],
  20. ["AB","CC",false],
  21. ["XXY","XYY",false],
  22. ["ABCBACCBA","ABCBACCAB",false],
  23.  
  24. ]
  25.  
  26. puts tests.all?{|test|f[test[0],test[1]]==test[2]} ? "all passed" : "some failed"
Success #stdin #stdout 0.02s 7572KB
stdin
Standard input is empty
stdout
all passed