Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
13
Task/Best-shuffle/Rascal/best-shuffle.rascal
Normal file
13
Task/Best-shuffle/Rascal/best-shuffle.rascal
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
import Prelude;
|
||||
|
||||
public tuple[str, str, int] bestShuffle(str s){
|
||||
characters = chars(s);
|
||||
|
||||
ranking = {<p, countSame(p, characters)> | p <- permutations(characters)};
|
||||
best = {<s, stringChars(p), n> | <p, n> <- ranking, n == min(range(ranking))};
|
||||
return takeOneFrom(best)[0];
|
||||
}
|
||||
|
||||
public int countSame(list[int] permutations, list[int] characters){
|
||||
return (0 | it + 1 | n <- index(characters), permutations[n] == characters[n]);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue