use proconio::input; use std::collections::HashMap; use std::collections::BTreeSet; fn main(){ input!{ s:String, } let mut map=HashMap::new(); map.insert('l','1'); map.insert('o','0'); map.insert('a','@'); map.insert('s','$'); let mut set=BTreeSet::new(); for i in (0..1<>p&1==1 && map.contains_key(&j){ c.push(map[&j]); } else { c.push(j); } p+=1 } let mut a=0;let mut b=0;let mut d=0; for j in c.chars(){ if 'a'<=j && j<='z'{ a=1; } else if '0'<=j && j<='9'{ b=1; } else{ d=1; } } if a==0 || b==0 || d==0{ continue; } set.insert(c); } print!("{}",set.len()); }