use proconio::input; use proconio::fastout; use proconio::marker::Chars; #[fastout] #[allow(non_snake_case)] fn main() { input! { S: Chars, } let N = S.len(); let mut stk = Vec::new(); let mut cnt = 0; for i in 0..N { if S[i] == '<' { stk.push(S[i]); cnt += 1; } else if S[i] == '=' { stk.push(S[i]); } else { let len = stk.len(); if cnt == 0 || stk[len-1] == '<' { stk.push(S[i]); cnt = 0; } else { let mut x = stk.pop().unwrap(); while x == '=' { x = stk.pop().unwrap(); } cnt -= 1; } } } println!("{}", stk.len()); }