B 一个板子题

首先先通过截图或者复制下来注意到模数是1e8+7而不是1e9+7

然后按照题目描述去做

当字符串里只有一种字符时才可能是非NO,此时输出n的阶乘即可

其他情况就是NO

const int N = 100001;

vector<ll> f(N);

void init()
{
   f[0] = 1;
   f[1] = 1;
   for (ll i = 2; i <= N - 1 ; i++)
   {
       f[i] = i * f[i - 1];
       f[i] %= mod;
   }
}

void Enolaly()
{
   int n;
   cin >> n;
   string s;
   cin >> s;
   bool flag = true;
   for (int i = 1; i < n; i++)
   {
       if (s[i] != s[i - 1])
       {
           flag = false;
           break;
       }
   }
   if (flag)
   {
       cout << f[n] << '\n';
   }
   else
   {
       cout << "NO" << '\n';
   }
}