智慧
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

在浙江工业大学之江学院,有一个传说中的秘密——只要你能从混乱的字母中提取出学院的英文缩写 ZZJC,就能获得🐷同学赠予的一点“智慧值”。积累足够的智慧值,就能在各类编程比赛中无往不利。

现在,你面前有一个由大写字母组成的长字符串。你可以从中挑选字母,按顺序组成子序列 Z → Z → J → C,每成功组成一个,你的智慧值就+1。

但需要注意以下规则:每个位置的字母只能使用一次(即每个位置的字母不能重复参与多个ZZJC的组成)。

你的目标是:尽可能多地提取ZZJC,获得最多的智慧值,为即将到来的比赛做好准备!

(好久没见到这么聪明的小猪猪了)

输入描述:

第一行输入一个字符串 S(1 \leq |S| \leq 10^5),表示可供挑选的字符串。

输出描述:

输出一个整数,表示最多能获得的智慧值。
示例1

输入

复制
ZZZZJJCC

输出

复制
2