CF452A Eevee 题解

Content

已知 \(\texttt{Eevee}\) 将进化成八种不同的口袋妖怪:\(\texttt{vaporeon,jolteon,flareon,espeon,umbreon,leafeon,glaceon,sylveon}\)

现在有一个长度为 \(n\) 的填字游戏,设计者确保答案是唯一的,已知答案是上面八个口袋妖怪中的一个,请确定 \(\texttt{Eevee}\) 将会进化成的口袋妖怪。

数据范围:\(6\leqslant n\leqslant 8\)

Solution

这题我们需要根据八个字符串不同的特征来判断,具体如下:

  • 如果 \(n=8\),那么一定是 \(\texttt{vaporeon}\)
  • 否则,如果 \(n=6\),那么一定是 \(\texttt{espeon}\)
  • 否则,如果第一个字符是 \(\texttt{j}\),或者第二个字符是 \(\texttt{o}\),或者第四个字符是 \(\texttt{t}\),那么一定是 \(\texttt{jolteon}\)
  • 否则,如果第一个字符是 \(\texttt{u}\),或者第二个字符是 \(\texttt{m}\),或者第三个字符是 \(\texttt{b}\),那么一定是 \(\texttt{unbreon}\)
  • 否则,如果第一个字符是 \(\texttt{l}\),或者第二个字符是 \(\texttt{e}\),或者第四个字符是 \(\texttt{f}\),那么一定是 \(\texttt{leafeon}\)
  • 否则,如果第一个字符是 \(\texttt{s}\),或者第二个字符是 \(\texttt{y}\),或者第四个字符是 \(\texttt{v}\),那么一定是 \(\texttt{sylveon}\)
  • 否则,如果第一个字符是 \(\texttt{g}\),或者第四个字符是 \(\texttt{c}\),那么一定是 \(\texttt{glaceon}\)
  • 否则,如果第一个字符是 \(\texttt{f}\),或者第四个字符是 \(\texttt{r}\),那么一定是 \(\texttt{flareon}\)

这里建议读者仔细对照每个名字自行分析。

Code

本题解只放核心代码部分,其中:

  • \(n\) 如题意所述。
  • \(a\) 表示输入的字符串。
if(n == 8)	return printf("vaporeon"), 0;
	else if(n == 6)	return printf("espeon"), 0;
	else if(a[0] == 'j' || a[1] == 'o' || a[3] == 't')	return printf("jolteon"), 0;
	else if(a[0] == 'u' || a[1] == 'm' || a[2] == 'b')	return printf("umbreon"), 0;
	else if(a[0] == 'l' || a[1] == 'e' || a[3] == 'f')	return printf("leafeon"), 0;
	else if(a[0] == 's' || a[1] == 'y' || a[3] == 'v')	return printf("sylveon"), 0;
	else if(a[0] == 'g' || a[3] == 'c')	return printf("glaceon"), 0;
	else if(a[0] == 'f' || a[3] == 'r')	return printf("flareon"), 0;
posted @ 2021-12-23 20:18  Eason_AC  阅读(48)  评论(0)    收藏  举报