#![allow( dead_code, non_snake_case, unused_imports, unused_mut, unused_variables, while_true, unused_assignments, clippy::needless_range_loop, clippy::ptr_arg, clippy::type_complexity, clippy::unnecessary_cast )] use proconio::{ input, marker::{Chars, Usize1 as usize1}, }; use std::collections::{BinaryHeap, HashMap, HashSet, VecDeque}; fn main() { input! { N: usize, S: Chars }; let mut ans = 0; for i0 in 0..N { for i1 in i0 + 1..N { for i2 in i1 + 1..N { for i3 in i2 + 1..N { for i4 in i3 + 1..N { let T = [S[i0], S[i1], S[i2], S[i3], S[i4]]; let cc = HashSet::::from_iter(T.iter().cloned()).len(); if cc == 4 && T[0] == T[2] { ans += 1; } } } } } } println!("{}", ans); }