- 解法一:
Vec
use std::io;
fn main() {
let mut s = String::new();
io::stdin().read_line(&mut s).expect("Failed to read line");
let mut v = Vec::new();
for i in 48..58u8 {
v.push((i,0u16));
}
for i in 97..123u8 {
v.push((i,0u16));
}
for i in s.into_bytes() {
match i {
97..=122 => v[i as usize - 87].1 += 1,
48..=57 => v[i as usize - 48].1 += 1,
_ => {}
}
}
v.sort_by(|a,b|b.1.cmp(&(a.1)));
for (u,num) in v.iter() {
if *num != 0 {
print!("{}",char::from(*u));
}else{
break;
}
}
}
解法二:HashMap:
waiting...