P253 [P1371] NOI元丹
普及
题目描述

题目描述

小A打算开始炼 $\texttt{NOI}$ 元丹(什么鬼),据说吃了可以提高 $\texttt{NOI}$ 时的成绩。

是这么炼的。元丹有三种元核,N、O、I。现有很多个这样原核,按顺序排成一行。炼元丹时,从左往右分别挑出 N、O、I 三个原核吞下。

现在他关心,有几种服用方式……且慢!

他觉得服用方式太少,以至于不能成仙。所以他可以通过某个途径,得到 N、O、I 的三种原核中的任意一个,至于哪一种由他决定。然后他将获得这个原核的插入到这一排原核中的任意位置(包括最前最后)。

现在你要知道,新的元核序列中能有多少种 N、O、I 的取出方式。子序列的字母并不要求连续。

输入格式

第一行,一个整数 $N$,表示字符串的长度。

第二行,一行字符串,里面只有只有 N、O、I 三种字母。

输出格式

表示出最多可以提炼出来的 $\texttt{NOI}$ 元丹的方案种数。

样例输入
5 NOIOI
样例输出
6
提示

样例解释:

他可以获取一个 N 元核,加到最前面。

NNOIOI | NNOIOI | NNOIOI | NNOIOI | NNOIOI | NNOIOI
~ ~~   | ~ ~  ~ | ~   ~~ |  ~~~   |  ~~  ~ |  ~  ~~

对于 $30\%$ 的数据 $N \le 200$。

对于 $50\%$ 的数据 $N \le 2000$。

对于 $100\%$ 的数据 $3 \le N \le 10 ^ 5$。

本题源自洛谷 P1371