1715 来自星星的你
Time Limit : 2000/1000 MS(Java/Others) | Memory Limit : 131072/65536 KB(Java/Others)
Submits : 19 | Solved : 2
Description
![]()
400年前坠落在朝鲜的外星人,带着他迄今为止4个世纪的秘密,独自在韩国首尔的天空下生活着。仍然拥有和初到地球时一样年轻英俊的外貌,并拥有着超天才的能力,他就是现任大学讲师的都敏俊。
另一方面是目中无人冒冒失失的韩流明星千颂伊。
相邻的男子和女子,迸出了火花,发现了和前生有关的牵绊。还有3个月就可以回到自己星球的都敏俊意外地陷入了和韩流明星千颂伊的爱情。
...
后来,都教授发现了一个可以快速延长地球停留时间的方法,那就是收集星星。
黑暗的天空中,布满了星星,不同的星星有不同的颜色。
![]()
为了获得更多的价值,收集星星是有策略的。
收集星星有两个步骤。
第一步是选择触发,选中一颗星星,同时与之上下左右相邻的同类星星也会被选中,并反复连锁反应,最终形成发亮的星团。
![]()
第二步是确认收集,点击发亮的星团,该星团会飘向遥远的天空,收集者获得相应的价值。
收集了一个星团,星图会发生变化。
上层的星星会下落填补下层空缺的位置;若一列的星星都空缺,则该列右侧的星星会往左移动,填补该列。总的规律是往下往左靠拢。
![]()
第二步中若点击的是未发亮的星星,则是回到了第一步,重新选择触发,点亮了一个新的星团,那么原先被点亮的星团就会恢复黯淡。
每一步中,若是点击了没有星星的星空,不会有任何效果。
Input
多组测试。
每组首先是两个在[1,20]范围的整数r和c,是天空的大小,有r行c列。
接下来c行,一行表示一列,从左到右。
每行一个整数x,范围[0,r],表示该列当前有x颗星,如果x大于0,则后边紧接着一个长x的字符串,表示该列从下到上的星星。
一颗星星用一个字符表示,字符范围[a,z]和[A,Z],小写字母表示未点亮的星星,大写字母表示点亮了的星星。
接下来一个整数m,范围[1,10],表示wuli都敏俊xi的m次操作。
接下来m行,每行2个整数,ir,范围[1,r],ic,范围[1,c],表示该次操作在星空的行坐标和列坐标。
Output
输出每一次操作后的星图。
Sample Input
4 3 4 dcba 3 rda 2 bv 3 3 3 1 2 1 2
Sample Output
a ba cdv drb a ba cdv dRb a b cav ddb
HINT
给的星图数据可能来自收集过程中的任何一个瞬间。最左列是第一列。最下行是第一行。输出包含最少的空格。wuli都敏俊xi:我们的都敏俊君。
Source
NBU OJ