Last letter-first letter: Difference between revisions
Content added Content deleted
m (Add trans note for Rust) |
m (→{{header|Rust}}: Remove a few non-idiomatic constructions and run through rustfmt.) |
||
Line 4,001: | Line 4,001: | ||
name: &'static str, |
name: &'static str, |
||
first: char, |
first: char, |
||
last: char |
last: char, |
||
} |
} |
||
Line 4,007: | Line 4,007: | ||
fn new(name: &'static str) -> Pokemon { |
fn new(name: &'static str) -> Pokemon { |
||
let mut chars = name.chars(); |
let mut chars = name.chars(); |
||
Pokemon { |
|||
name, |
name, |
||
first: chars.next().unwrap(), |
first: chars.next().unwrap(), |
||
last: chars.last().unwrap() |
last: chars.last().unwrap(), |
||
} |
} |
||
} |
} |
||
Line 4,020: | Line 4,020: | ||
max_path_length_count: usize, |
max_path_length_count: usize, |
||
max_path_example: String, |
max_path_example: String, |
||
pokemon: Vec<Pokemon> |
pokemon: Vec<Pokemon>, |
||
} |
} |
||
Line 4,048: | Line 4,048: | ||
fn main() { |
fn main() { |
||
let pokemon_names = [ |
let pokemon_names = [ |
||
"audino", |
|||
"braviary", "bronzor", "carracosta", "charmeleon", "cresselia", |
|||
"bagon", |
|||
"croagunk", "darmanitan", "deino", "emboar", "emolga", |
|||
"baltoy", |
|||
"exeggcute", "gabite", "girafarig", "gulpin", "haxorus", |
|||
"banette", |
|||
"heatmor", "heatran", "ivysaur", "jellicent", "jumpluff", |
|||
"bidoof", |
|||
"kangaskhan", "kricketune", "landorus", "ledyba", "loudred", |
|||
"braviary", |
|||
"lumineon", "lunatone", "machamp", "magnezone", "mamoswine", |
|||
"bronzor", |
|||
"nosepass", "petilil", "pidgeotto", "pikachu", "pinsir", |
|||
"carracosta", |
|||
"poliwrath", "poochyena", "porygon2", "porygonz", "registeel", |
|||
"charmeleon", |
|||
"relicanth", "remoraid", "rufflet", "sableye", "scolipede", |
|||
"cresselia", |
|||
"scrafty", "seaking", "sealeo", "silcoon", "simisear", |
|||
"croagunk", |
|||
"snivy", "snorlax", "spoink", "starly", "tirtouga", |
|||
"darmanitan", |
|||
"trapinch", "treecko", "tyrogue", "vigoroth", "vulpix", |
|||
"deino", |
|||
"wailord", "wartortle", "whismur", "wingull", "yamask"]; |
|||
"emboar", |
|||
"emolga", |
|||
"exeggcute", |
|||
"gabite", |
|||
"girafarig", |
|||
"gulpin", |
|||
"haxorus", |
|||
"heatmor", |
|||
"heatran", |
|||
"ivysaur", |
|||
"jellicent", |
|||
"jumpluff", |
|||
"kangaskhan", |
|||
"kricketune", |
|||
"landorus", |
|||
"ledyba", |
|||
"loudred", |
|||
"lumineon", |
|||
"lunatone", |
|||
"machamp", |
|||
"magnezone", |
|||
"mamoswine", |
|||
"nosepass", |
|||
"petilil", |
|||
"pidgeotto", |
|||
"pikachu", |
|||
"pinsir", |
|||
"poliwrath", |
|||
"poochyena", |
|||
"porygon2", |
|||
"porygonz", |
|||
"registeel", |
|||
"relicanth", |
|||
"remoraid", |
|||
"rufflet", |
|||
"sableye", |
|||
"scolipede", |
|||
"scrafty", |
|||
"seaking", |
|||
"sealeo", |
|||
"silcoon", |
|||
"simisear", |
|||
"snivy", |
|||
"snorlax", |
|||
"spoink", |
|||
"starly", |
|||
"tirtouga", |
|||
"trapinch", |
|||
"treecko", |
|||
"tyrogue", |
|||
"vigoroth", |
|||
"vulpix", |
|||
"wailord", |
|||
"wartortle", |
|||
"whismur", |
|||
"wingull", |
|||
"yamask", |
|||
]; |
|||
let mut app = App { |
let mut app = App { |
||
pokemon: pokemon_names.iter().map( |
pokemon: pokemon_names.iter().map(Pokemon::new).collect(), |
||
..App::default() |
..App::default() |
||
}; |
}; |
||
Line 4,077: | Line 4,135: | ||
println!("Paths of that length: {}", app.max_path_length_count); |
println!("Paths of that length: {}", app.max_path_length_count); |
||
println!("Example path of that length: {}", app.max_path_example); |
println!("Example path of that length: {}", app.max_path_example); |
||
} |
|||
</lang> |
|||
Recommend you run as `release` or at least with `opt-level=1` |
Recommend you run as `release` or at least with `opt-level=1` |
||
{{out}} |
{{out}} |
||
Line 4,085: | Line 4,144: | ||
Example path of that length: machamp pinsir rufflet trapinch heatmor remoraid darmanitan nosepass starly yamask kricketune exeggcute emboar relicanth haxorus simisear registeel landorus seaking girafarig gabite emolga audino |
Example path of that length: machamp pinsir rufflet trapinch heatmor remoraid darmanitan nosepass starly yamask kricketune exeggcute emboar relicanth haxorus simisear registeel landorus seaking girafarig gabite emolga audino |
||
</pre> |
</pre> |
||
=={{header|Scala}}== |
=={{header|Scala}}== |
||
===Naive=== |
===Naive=== |