2016-12-05 23:44:36 +01:00
|
|
|
func check_perm(arr) {
|
2017-09-23 10:01:46 +02:00
|
|
|
var hash = Hash()
|
|
|
|
|
hash.set_keys(arr...)
|
2016-12-05 23:44:36 +01:00
|
|
|
arr.each { |s|
|
2017-09-23 10:01:46 +02:00
|
|
|
{
|
|
|
|
|
var t = (s.substr(1) + s.substr(0, 1))
|
|
|
|
|
hash.has_key(t) || return t
|
|
|
|
|
} * s.len
|
2016-12-05 23:44:36 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var perms = %w(ABCD CABD ACDB DACB BCDA ACBD ADCB CDAB DABC BCAD CADB CDBA
|
2017-09-23 10:01:46 +02:00
|
|
|
CBAD ABDC ADBC BDCA DCBA BACD BADC BDAC CBDA DBCA DCAB)
|
2016-12-05 23:44:36 +01:00
|
|
|
|
2017-09-23 10:01:46 +02:00
|
|
|
say check_perm(perms)
|