rendered paste bodygentoo-pc ~/d $ cat test13.d && gdc test13.d -o test13 -Itools tools/tools/*.d -O3 && time ./test13
import tools.log, tools.base;
void main() {
auto states = ["alabama"[],"alaska","arizona","arkansas","california","colorado",
"connecticut","delaware","florida","georgia","hawaii","idaho",
"illinois","indiana","iowa","kansas","kentucky","louisiana",
"maine","maryland","massachusetts","michigan","minnesota",
"mississippi","missouri","montana","nebraska","nevada",
"newhampshire","newjersey","newmexico","newyork","northcarolina",
"northdakota","ohio","oklahoma","oregon","pennsylvania","rhodeisland",
"southcarolina","southdakota","tennessee","texas","utah","vermont",
"virginia","washington","westvirginia","wisconsin","wyoming"];
Stuple!(string, string)[string] seen;
foreach (state1; states)
foreach (state2; states) {
if (state1==state2) continue;
auto letters=state1~state2;
letters.sort;
if (letters in seen) {
auto old=seen[letters];
if (old==stuple(state2, state1)) continue;
else {
logln("found ", state1, " and ", state2, " ... ", old.values[0], " and ", old.values[1]);
return;
}
}
else seen[letters]=stuple(state1, state2);
}
}
/--[ Main Thread ]------
| found northdakota and southcarolina ... northcarolina and southdakota
\-----------------------------
real 0m0.008s
user 0m0.007s
sys 0m0.002s