D. 2023.04.27-春招-第四题-路径数量

2023.04.27-春招-第四题-路径数量

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

注:这个题意确实有点迷。std都不保证100%正确。整不了建议放弃。标答放在评论区了

题目内容

塔子哥是一个喜欢探险的小男孩,他有一天发现了一张神秘的地图,上面标注了一些奇怪的符号和箭头。

他觉得这是一张藏宝图,并且这个藏宝图是一个有向图,于是他决定去寻找宝藏。地图上的符号代表了不同的地点,箭头代表了可以从一个地点到达另一个地点的路线。

地图上有两个特殊的符号,S和E,分别代表了起点和终点。(这张图只有S无入度,只有E无出度)塔子哥想要从起点出发,到达终点,同时经过某个指定的地点,比如一个古老的神庙或一个美丽的瀑布。

他想知道有多少种不同的路线可以满足他的要求,他的要求如下:

  1. 与普通的访问不同,塔子哥被允许访问所有点以及边多次。
  2. 塔子哥被允许访问环,但是不能无限转圈,那将无法停下,所以GameMaker规定了,同一个环不能经过22 次或 22 次以上,不然没法停下来
  3. 塔子哥必须路过被要求经过的点

你能帮他计算出有多少种路线吗?

输入描述

第一行为一个字符串 str ,表示指定节点。

接下来若干行,每一行为两个字符串 s1 和 s2 ,表示节点 s1 到节点 s2 有一条边。

约定

1≤节点个数≤101 \leq 节点个数 \leq 10

保证输入的是一个合法的有向图。不含自环,不含重边.指定节点不是S,ES,E

输出描述

输出为一个整数,表示从S节点开始E节点结束且经过指定节点 str 的路径数量。

样例

样例一

输入

2
S 1
S 1a
1 2
1a 2
2 3
3 E

输出

2

样例解释

样例一输入的图如下:

image

由上可知以S作为起点,E作为终点并且经过节点2的路径有两条。

样例二

输入

3
S 1
1 2
2 1
2 3
3 E

输出

2

样例解释

样例二输入的图如下:

image

由上可知以S作为起点,E作为终点并且经过节点3的路径有一下两条路径: S->1->2->3->E 和 S->1->2->1->2->3->E 。

其中第二条路径走了一次环,然后跳出了环,因为题目要求环不能走两次及以上。

样例三

输入

a3
a3 a5
a3 a4
a4 a5
a4 a3
a5 a3
S a5
a5 E

输出

5

春招模拟赛第十八场|虎牙|2023.4.27

Not Attended
Status
Done
Rule
IOI
Problem
4
Start at
2023-5-9 19:00
End at
2023-5-9 20:30
Duration
1.5 hour(s)
Host
Partic.
32