- 题目链接: https://codeforces.com/contest/1688/problem/C
题意 : 给你一个字符串s,每次从给的 s 的子串 t 中选取一个给的另一个子串 t' ,把 t 替换为 t',输入第一行 n ,接下来2n行是若干个子串 t , 第 2n+1 行是演变完的字符串。
对于还在学习提升脑速的人来说这题一眼看上去就有些迷糊,然而答案总是让人意想不到!
当我们按照替换的逻辑将所有子串 (包括第2n+1行的结果字符串) 放在一起,我们会发现,带上最终的字符串后,除了第一次替换的原始字符,所有被替换的子串的各个字符出现了偶数次(被代替的和代替的,有重复部分,可以自己画图验证一下)
那么答案就很明了了,多出一个字符(奇数个)的那个就是原始字符串。
C++ Code:
虽然可以直接也看别人题解琢磨,但还是发一下自己的理解加深记忆,见谅,谢谢。
#include
#include
#include
#include
#include
#include