牛客练习赛31

题目1:地、颜色、魔法

题目描述:

红色来源于山脉,象征着狂躁、愤怒、混乱,血雨腥风,电光火石。
蓝色来源于海岛,象征着控制、幻觉、诡计,运筹帷幄,谋定后动。
绿色来源于树林,象征着生命、蛮力、成长,横冲直撞,生生不息。
黑色来源于沼泽,象征着死亡、贪婪、腐败,追求卓越,不计代价。
白色来源于平原,象征着秩序、公平、正义,携手共进,稳中求胜。


现在,你作为一名新星鹏洛客,找到了一块绝佳的修炼地。这块地方可以被描述成一个 n x m 的矩形。你已经在这块地中的一些位置打好了标记。接下去,就该对整块地赋予你的颜色了。一个位置能被赋予你的颜色,当且仅当满足以下条件之一:

  1. 这个位置被打上了标记。
  2. 这个位置在不经过被打标记的位置的情况下与边界不连通(这个图是四联通的)。换句话说,如果你从这个位置开始,在不经过被打标记的位置,且只能向上下左右四个方向移动的情况下永远不能走到地图的边界,那么这个位置符合条件。
    现在,你的好基友想知道,你能为多少个位置赋予你自己的颜色呢?

输入描述:

第一行包含两个正整数 n, m ,表示地图的长和宽。
接下去 n 行,每行一个长为 m 的字符串,表示地图的一行。
其中 表示该位置未被打标记; 表示该位置被打了标记。
保证地图仅由 和 构成。

输出描述:

输出仅一行,包含一个整数,表示你的答案。

示例:

输入:

4 4
....
.###
.#.#
.###

输出:

9

说明:
可以被赋予颜色的位置在下图中用 标出了。

....
.@@@
·@@@
.@@@

备注

1 ≤ n x m ≤ 10^6

题目2:赞迪卡之声妮莎与奥札奇

题目描述:

生命在各处成长。我的族人只是在寻找成长最旺的地方。」 ——妮沙瑞文

奥札奇军团降临!赞迪卡陷入危机!无尽轮回钨拉莫和真理屠夫寇基雷带领着这群庞大的掠食者在赞迪卡肆意破坏。旅法师妮莎瑞文必须要阻止这一切。
在赞迪卡时空的一角,有 n 个寇族的部落。为了抵御奥札奇的进攻,这些部落之间联系密切。在任意两个部落之间都有一条直接道路相连接。换句话说,这 n 个部落与若干条道路构成了一张完全图。
现在,奥札奇军团已经占领了 1 号寇族部落并停留在此处。而钨拉莫与寇基雷两王却开始了游戏(伊莫库大姐快来管管)。游戏的规则是这样的:钨拉莫与寇基雷两王轮流带领奥札奇军团移动一次。每次可以从一个寇族部落通过一条未被腐蚀的道路移动到另一个寇族部落。任何移动必须在这 n 个寇族部落及其道路中进行。由于奥札奇对法术力的吞噬,奥札奇军团行经的道路都会被腐蚀。最后,在规则的限制下,奥札奇军团将无路可走。此时,将带领军团进行下一步移动的奥札奇之王将输掉这个游戏。钨拉莫先手。
钨拉莫与寇基雷作为奥札奇三祖中的两者,自然拥有超高的智力。所以你可以认为,他们都将以最优决策进行游戏。
游戏的赢家将率领军队与妮莎作战,而妮莎还在赶来的路上。所以请你先观察这个游戏,到时便可以告诉妮莎谁会是她的对手。

输入描述:

本题有多组测试数据。
第一行一个正整数 T ,表示数据组数。
接下去 T 行,每行一个数 n ,表示寇族部落的个数。

输出描述:

输出共 T 行,每行一个字符串 "Ulamog, the Infinite Gyre" 或 "Kozilek, Butcher of Truth" 表示胜利者(去掉括号)。前者为无尽轮回钨拉莫,后者为真理屠夫寇基雷。

示例:

输入:

2
1
3

输出:

Kozilek, Butcher of Truth
Ulamog, the Infinite Gyre

说明:

  • 当 n=3 时,钨拉莫可以率领军团从 1 走到 2 ,之后 的边不能再走了。
  • 下一步寇基雷只能带领军团移动至 3 ,之后 的边不能再走了。
  • 最后钨拉莫只要将军团移回 1 ,寇基雷就无路可走了。

备注

1 ≤ T ≤ 2000
1 ≤ n ≤ 2000

题目3:无畏死灵术士莉莲娜与锁链面纱

题目描述:

你若发现自己在遗忘边界摇摇欲坠,我的双手很乐意推上最后一把。」 ——莉莲娜维斯

莉莲娜维斯受恶魔柯索菲的要求来到欧娜卡寻找远古巨魔文明遗留下来的强大神器——锁链面纱。她冲破重重阻碍,来到欧娜卡的寺庙,企图得到锁链面纱,却遇到了一些难题。
锁链面纱被一些机关巧妙的保护起来。这个机关是由 n 块大小不一的石头组成的,我们可以将它们按照从小到大的顺序编号为 。莉莲娜的任务是把这些石头从小到大地排好序。每一次,莉莲娜可以挑选其中一块石头为其注入能量,之后其他所有的石头中,比这块注入能量的石头小的石头会保持相对顺序不变地移动到它的左边,其余的保持相对顺序不变地移动到右边。举个例子,一开始有石头序列为 {3, 2, 1, 5, 6, 4},假如莉莲娜选择石头 4,那么石头序列会变成 {3, 2, 1, 4, 5, 6},原因是其中的 1, 2, 3 号石头按需留在 4 号石头左边,而 5, 6 号石头按序移动到 4 号石头右边;假如莉莲娜选择石头 2,那么石头序列会变成 {1, 2, 3, 5, 6, 4} 。
莉莲娜不想花费太多精力在破解这个小小的机关上,所以她召唤了一只灵俑来帮她。灵俑十分愚蠢,每次只会在 n 块石头中等概率随机一个注入能量。莉莲娜想请你告诉她,这只灵俑能成功解开机关的期望注能次数是多少?答案对 998244353 取模。
可以证明答案能被表示为 的形式 ,其中 a 和 b 互质。输出整数 x 使得 且 0 ≤ x < 998244353 。可以证明这样的整数 x 是唯一的。

输入描述:

从标准输入中读入。
第一行一个正整数 n 。
第二行 n 个正整数表示一个 1 到 n 的排列。

输出描述:

输出到标准输出。
一行,表示答案。对 998244353 取模。

示例:

输入:

3
2 3 1

输出:

499122178

说明:

序列初始为 {2, 3, 1} 。

  • 假设第一次选择了 1,那么序列变为 {1, 2, 3},排序完成。
  • 假设第一次选择了 2,那么序列变为 {1, 2, 3},排序完成。
  • 假设第一次选择了 3,那么序列变为 {2, 1, 3},排序未完成。
    = 假设第二次选择了 1 或 2,那么序列变为 {1, 2, 3},排序完成。
    = 假设第二次选择了 3,那么序列不变。
    ……
    根据期望的定义以及无穷级数的计算可以得到答案为 , 对 998244353 取模后结果为 499122178 。

备注

1 ≤ n ≤ 20

题目4:神器大师泰兹瑞与威穆

题目描述:

「只要我拉动绳线,你就得随之起舞。」 ——泰兹瑞

泰兹瑞来到卡拉德许之后,由于他精湛的神器制造技术,可谓是过的如鱼得水。这次,他为自己打造了一个编辑器,称为威穆(Veim)。操作威穆时,有两种模式,具体操作如下。

在 Normal Mode 下

  • 按下 i :进入 Insert Mode 。
  • 按下 f :紧接着一个小写字母 char,若当前光标后(右)方有至少一个 char ,将光标移动到其所在位置,否则不移动。
  • 按下 x :删除当前光标所在位的字符,后面的字符均会前移一格。
  • 按下 h :将光标向左(前)移动一格,若无法移动就不移动。
  • 按下 l :将光标向右(后)移动一格,若无法移动就不移动。
  • 若按下了其他字符:无任何效果。

在 Insert Mode 下

  • 按下非 e 小写字母 char :在光标当前位置前插入这个字母 char。
  • 按下 e :退出 Insert Mode(进入 Normal Mode)。

(具体请见样例)
现在泰兹瑞的威穆中已经写入了一个字符串 s 。接下去泰兹瑞进行了一波操作(按下了若干按键),他的按键序列为 t 。现给出 s 和 t ,求这波操作之后威穆内留下的字符串。

输入描述:

两行,第一行字符串 s ,第二行字符串 t 。

输出描述:

一行,威穆里最后留下的字符串。

示例1:

输入:

applese
xfllhlia

输出:

pplaese

说明:

  • 初始时,字符串为 applese,威穆处于 Normal Mode 。下划线表示光标所在位置。
  • 第一步操作为 x ,删除当前光标所在位的字符,并且光标后移一格。字符串变为 pplese 。威穆仍处于 Normal Mode。
  • 下一步操作为 f ,之后跟有一个字符 l 。光标后存在字符 l ,故移动到该位置。字符串变为 pplese。威穆仍处于 Normal Mode。
  • 下一步操作为 l ,光标后移一格。字符串变为 pplese 。威穆仍处于 Normal Mode。
  • 下一步操作为 h ,光标前移一格。字符串变为 pplese 。威穆仍处于 Normal Mode。
  • 下一步操作为 l ,光标后移一格。字符串变为 pplese 。威穆仍处于 Normal Mode。
  • 下一步操作为 i ,威穆进入 Insert Mode。字符串仍为 pplese 。
  • 下一步操作为 a ,而非 e ,故插入字符 a 。字符串变为 pplaese 。

示例2:

输入:

pppp
iaefpfpia

输出:

appapp

备注

1 ≤ |s|, |t| ≤ 105
s, t 均由小写拉丁字母组成。

题目5:龙魂合一萨坎与晶石

题目描述:

「文词只是浪费时间。 毁灭这语言人人都懂。」 ——萨坎沃

萨坎重回乌金之眼,他发现乌金之眼正因之前的交战被开启。他思索着主人的目的,突然发现巨龙形态下的自己可以读懂晶石上的铭文。他变成巨龙,驱散了另一条堕落的龙魂,阅读了晶石上的神秘铭文。他具体读到了什么我们不得而知,我们只知道,阅读铭文后的萨坎只想切碎所有的晶石。
浮在空中的晶石排列成了一个 n x n 的方格阵。每个单位边长的方格内有一颗晶石。萨坎能做的是选择两个不同的落在方格阵边界的交点,然后用剑沿着这两点连线割下去。如果一个方格被割断(只割到顶点或边界不算割断),那么这个方格内的晶石将失去能量。

如上图所示,这是一个 3 x 3 的方格阵。其中橙色部分表示被割断的方格;深红色线表示割下的路径。每个交点的坐标标记在其附近。
经过交战,萨坎剩余的能量只够切割 n+1 次。由于种种原因,萨坎必须切恰好 n+1 刀,并且萨坎所切的 n+1 刀中,不能有任何两刀平行。有着丰富经验的萨坎在砍完 n+1 刀之后所有的晶石都失去了能量。
现在请聪明的你也学着像萨坎那样,在这个 n x n 的方格中,切恰好 n+1 刀,使所有方格都能被割断。

输入描述:

第一行一个正整数 T ,表示有 T 组测试数据。
接下去每组测试数据输入一行,包含一个正整数 n 。

输出描述:

每个测试数据输出 n+1 行,每行四个整数 px, py, qx, qy ,表示一条由点 (px, py) 和点 (qx, qy) 连成的直线。点 (px, py) 和点 (qx, qy) 必须落在方格阵的边界上,且两点不能相同。
每行的四个整数之间请用一个空格隔开,行末请不要添加多余空格。文末请不要输出多余信息。

示例1:

输入:

1
2

输出:

0 0 1 2
1 2 2 0
0 0 2 0

说明:
分割方案如下图所示。

备注

1 ≤ N ≤ 2000
1 ≤ T ≤ 20

题目6:瑟班守护者莎利雅与护教军

最后一个真心懒了,嘻嘻


posted @ 2018-12-10 16:16  JingWenxing  阅读(728)  评论(0编辑  收藏  举报