AT_arc196_c.[ARC196C] Strongly Connected

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

有一个包含 2N2N 个顶点和 2N−12N-1 条边的有向图。顶点编号为 1,2,…,2N1, 2, \ldots, 2N,第 ii 条边是从顶点 ii 指向顶点 i+1i+1 的有向边。

给定一个由 NN 个 W 和 NN 个 B 组成的长度为 2N2N 的字符串 S=S1S2…S2NS = S_1S_2\ldots S_{2N}。如果 SiS_i 是 W,则顶点 ii 被涂成白色;如果 SiS_i 是 B,则顶点 ii 被涂成黑色。

你需要进行如下操作:

  • 将 2N2N 个顶点分成 NN 对,每对包含一个白色顶点和一个黑色顶点。
  • 对于每一对,添加一条从白色顶点指向黑色顶点的有向边。

请计算有多少种分组方式,使得最终得到的图是强连通的。将答案对 998244353998244353 取模后输出。

强连通的定义:有向图是强连通的,当且仅当对于图中的任意两个顶点,都存在一条从一个顶点到另一个顶点的有向路径。

输入格式

输入以如下格式从标准输入读入:

NN SS

输出格式

请输出在操作中将顶点分为 NN 对的所有方式中,使最终得到的图是强连通的方式数。答案对 998244353998244353 取模。

输入输出样例

  • 输入#1

    2
    BWBW

    输出#1

    1
  • 输入#2

    4
    BWWBWBWB

    输出#2

    0
  • 输入#3

    9
    BWWBWBBBWWBWBBWWBW

    输出#3

    240792

说明/提示

限制条件

  • 1≤N≤2×1051 \leq N \leq 2 \times 10^5
  • SS 是由 NN 个 W 和 NN 个 B 组成的长度为 2N2N 的字符串
  • NN 是整数

样例解释 1

顶点 2,42, 4 是白色,顶点 1,31, 3 是黑色。用 (u,v)(u, v) 表示从顶点 uu 指向顶点 vv 的边。如果将顶点分为 (2,1),(4,3)(2,1), (4,3) 这两对,则最终图中存在的边为 (1,2),(2,3),(3,4),(2,1),(4,3)(1,2), (2,3), (3,4), (2,1), (4,3)。此时,例如无法从顶点 33 经过若干条边到达顶点 11,因此该图不是强连通的。如果分为 (2,3),(4,1)(2,3), (4,1) 这两对,则最终图中存在的边为 (1,2),(2,3),(3,4),(2,3),(4,1)(1,2), (2,3), (3,4), (2,3), (4,1)。此时该图是强连通的。因此满足条件的分组方式有 11 种。

样例解释 2

无论如何分组,都无法满足条件。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页