#P16929. 迷向术式

迷向术式

背景

:::info[题目背景] 林间的地面铺满了经年累月积下的枯叶,踩上去会发出细碎而干燥的声响。高大的针叶树笔直地伸向天空,枝梢交错,将原本就不算明亮的天光切割得支离破碎。偶尔有风穿过林隙,带起一阵微冷的草木气息,远处还能听见不知名的鸟鸣,断断续续地从更深的地方传来。

可随着时间一点点过去,菲伦渐渐察觉到了不对劲。

那些看似陌生的树根、斜倚在石边的枯木、甚至一簇开在阴影中的浅蓝色小花,似乎已经不是第一次见到了。再往前走了一段后,休塔尔克终于停下脚步,盯着不远处一块表面裂开的灰白色岩石,脸色有些僵硬。

「这个地方……我们是不是刚才来过?」

菲伦沉默了片刻,轻轻点头。

他们并不是单纯地走错了路。

这片森林,比从外面看上去要庞大得多。枝叶、雾气、几乎没有分别的小径,还有仿佛会缓慢移动位置的山石与树影,把方向感一点点磨损干净。无论朝哪个方向前进,最后都像是被什么东西轻轻推着,重新送回原处。就像整片森林本身,正在不动声色地注视着闯入者,然后耐心地让他们在原地打转。

「是结界一类的东西吗?」菲伦低声问。

「更像是某种很古老的迷向术式。」芙莉莲抬头看了看被树冠遮住大半的天空,语气依旧平静,「规模很大,而且已经和这片森林本身融在一起了。想强行破开的话,会有点麻烦。」

「你说『有点麻烦』的时候,一般都不会只是『有点』吧……」休塔尔克叹了口气,把背上的长斧放了下来。

在连续绕行了许久之后,三人终于决定先停下来休整片刻。菲伦靠着一截覆满苔藓的树根坐下,将水壶轻轻放在身侧;休塔尔克则直接坐在一块平坦的石头上,仰头长长呼出一口气。林间的风声仍旧缓慢地穿行着,枝叶彼此摩擦,发出细微而重复的沙沙声,让人几乎分不清时间究竟过去了多久。

芙莉莲没有立刻坐下。

她半跪在一片稍显空旷的地面上,拿出笔记本,安静地把这一路上经过的路径一点点画了下来。分岔的小路、重复出现的岩石、被他们做过记号的树木、兜兜转转之后又重新连回原点的轨迹,都被她用简洁而清晰的线条标记在纸页上。那张图越来越复杂,像一团缠绕在一起、找不到出口的细线。

菲伦凑过去看了一眼,轻声说道:「已经绕成这样了啊……」

「嗯。」芙莉莲合上笔记本,「不过这样一来,至少能弄清楚我们是怎么被困住的了。」

她终于在两人身边坐下,把笔轻轻别回书页之间,银白色的发梢垂落在肩侧。林中的空气安静得近乎凝滞,既然一时半会儿找不到出去的办法,继续焦躁地赶路也没有意义。

「那接下来怎么办?」休塔尔克问。

芙莉莲想了想,看着自己刚刚画好的路线图,忽然很轻地笑了一下。

「先休息一会儿吧。」她说,「顺便,来玩个游戏。」

题目描述

芙莉莲画下的地图可以看作一个无向图 GG,包含 nn 个顶点和 mm 条边,其中顶点编号为 1n1\sim n。此外,芙莉莲还有一个长度为 kk 的序列 a1,a2,,aka_1, a_2, \dots, a_k,其中 ai[1,n]a_i \in [1,n]。而菲伦和休塔尔克需要在地图与纸带上轮流进行 qq 轮游戏。

对于每轮游戏,芙莉莲都会给定一个区间 [l,r][l,r],其中 1lrk1\leq l\leq r\leq k,表示当前游戏的范围。在游戏中,每个玩家可以轮流移动同一枚棋子,这枚棋子初始位置在 ll。如果当前棋子在位置 ii,则可以被移动到位置 jj 的条件是:当且仅当 i<jri < j \leq r,且 aia_iaja_j 之间存在一条路径,且路径的长度与 jij-i 的奇偶性相同。

请注意,这里的路径的定义是一组顶点 {v1,v2,,vt}\{v_1, v_2, \dots, v_t\},对于任意 i[1,t)i\in[1, t)viv_ivi+1v_{i+1} 之间存在一条边。顶点可以重复,换句话说,路径允许经过重复的点或边,路径的长度定义为经过的边的数量,也就是 t1t-1

如果一个玩家无法进行任何合法的移动,则该玩家输掉游戏,对于每局游戏,芙莉莲想要知道,如果在双方都采用最优策略的情况下谁将获胜,菲伦将先手游戏。

输入格式

输入第一行包含四个整数 n,m,k,q(1n,m,k,q2×105n,m,k,q(1\leq n,m,k,q\leq 2\times 10^5,分别表示地图的顶点数、边数、序列长度和游戏轮数。

接下来 mm 行,每行包含两个整数 u,v(1u,vn)u,v(1\leq u,v\leq n),表示 uuvv 之间存在一条无向边 (u,v)(u,v)

接下来 kk 个整数 a1,a2,,ak(1ain)a_1,a_2,\dots,a_k(1\leq a_i\leq n),表示序列 a1,a2,,aka_1, a_2, \dots, a_k

接下来 qq 行,每行包含两个整数 l,r(1lrk)l,r(1\leq l\leq r\leq k),表示一次游戏的范围 [l,r][l,r]

输出格式

输出 qq 行,每行包含一个字符串 FernStark,表示获胜方为菲伦或休塔尔克。

5 4 5 4
1 2
2 3
3 1
4 5
1 4 2 5 3
1 5
2 5
3 4
4 5
Fern
Stark
Stark
Stark

提示

对于样例一,不难发现对于顶点集合 {1,2,3}\{1, 2, 3\} 而言,无论如何选择起点与终点,都能找到一条合法的长度为奇数的路径和一条长度为偶数的路径,454\to 5545\to 4 也是两条合法的长度为奇数的路径,但找不到长度为偶数的路径,除此之外别无其他路径。

故考虑四局游戏,第一局的纸带序列区间为 [1,5][1, 5],也就是 {1,4,2,5,3}\{1, 4, 2, 5, 3\},不难发现,由于131\to 3 存在一条偶数路径,且 51=45 - 1 = 4 也为偶数,因此菲伦可以直接把棋子从下标为 11 的点直接移动到下标为 55 的点,休塔尔克无法继续移动;

第二局纸带序列区间为 [2,5][2, 5],也就是 {4,2,5,3}\{4, 2, 5, 3\},不难发现棋子无法进行任何移动,因为 424\to 2434\to 3 不存在路径;而 454\to 5 仅存在一条奇数路径,与 31=23 - 1 = 2 的奇偶性不同;

第三局纸带序列区间为 [3,4][3, 4],也就是 {2,5}\{2, 5\},两点之间不存在路径,棋子无法进行任何移动;

第四局纸带序列区间为 [4,5][4, 5],也就是 {5,3}\{5, 3\},两点之间不存在路径,棋子无法进行任何移动;

综上,只有第一局游戏菲伦可以获胜,后三局由于开局时棋子就无法移动,因此均为休塔尔克获胜。