CF---(452)A. Eevee

A. Eevee

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

You are solving the crossword problem K from IPSC 2014. You solved all the clues except for one: who does Eevee evolve into? You are not very into pokemons, but quick googling helped you find out, that Eevee can evolve into eight different pokemons: Vaporeon, Jolteon, Flareon, Espeon, Umbreon, Leafeon, Glaceon, and Sylveon.

You know the length of the word in the crossword, and you already know some letters. Designers of the crossword made sure that the answer is unambiguous, so you can assume that exactly one pokemon out of the 8 that Eevee evolves into fits the length and the letters given. Your task is to find it.

Input

First line contains an integer n (6 ≤ n ≤ 8) – the length of the string.

Next line contains a string consisting of n characters, each of which is either a lower case english letter (indicating a known letter) or a dot character (indicating an empty cell in the crossword).

Output

Print a name of the pokemon that Eevee can evolve into that matches the pattern in the input. Use lower case letters only to print the name (in particular, do not capitalize the first letter).

Sample test(s)

Input

7 j......

Output

jolteon

Input

7 ...feon

Output

leafeon

Input

7 .l.r.o.

Output

flareon

Note

Here's a set of names in a form you can paste into your solution:

["vaporeon", "jolteon", "flareon", "espeon", "umbreon", "leafeon", "glaceon", "sylveon"]

{"vaporeon", "jolteon", "flareon", "espeon", "umbreon", "leafeon", "glaceon", "sylveon"}

给你一个稀疏的字符串,告诉你长度,然后要你在已知的8个字符串下进行匹配..........

代码:

 1 #include<iostream>
 2 #include<cstring>
 3 #include<cstdio>
 4 using namespace std;
 5 struct node{
 6   int len;
 7   char ss[9];
 8 };
 9 node str[]={
10   {8,"vaporeon"},
11   {7,"jolteon"},
12   {7,"flareon"},
13   {6, "espeon"},
14   {7,"umbreon"},
15   {7,"leafeon"},
16   {7,"glaceon"},
17   {7,"sylveon"}
18 };
19 int main()
20 {
21   int n;
22   char ss[10];
23 //freopen("test.in","r",stdin);
24   while(scanf("%d%s",&n,ss)!=EOF)
25       for(int i=0;i<8;i++){
26           if(n==str[i].len){
27               bool flag=true;
28             for(int j=0;j<n;j++){
29               if(ss[j]!='.'&&ss[j]!=str[i].ss[j]){
30                  flag=false;
31                    break;
32                 }
33             }
34             if(flag){
35              printf("%s\n",str[i].ss);
36              break;
37             }
38           }
39       }
40   return 0;
41 }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Golang语言社区

在Go语言中使用JSON

Encode 将一个对象编码成JSON数据,接受一个interface{}对象,返回[]byte和error: func Marshal(v interfac...

3419
来自专栏老马说编程

(63) 实用序列化: JSON/XML/MessagePack / 计算机程序的思维逻辑

上节,我们介绍了Java中的标准序列化机制,我们提到,它有一些重要的限制,最重要的是不能跨语言,实践中经常使用一些替代方案,比如XML/JSON/Message...

2868
来自专栏彭湖湾的编程世界

【Java】利用注解和反射实现一个"低配版"的依赖注入

在Spring中,我们可以通过 @Autowired注解的方式为一个方法中注入参数,那么这种方法背后到底发生了什么呢,这篇文章将讲述如何用Java的注解和反射实...

1404
来自专栏微信公众号:Java团长

细说JDK动态代理的实现原理

来源:blog.csdn.net/mhmyqn/article/details/48474815

682
来自专栏JAVA后端开发

xml与java对象的快速互转

做流程图的项目时,新的流程定义为xml的,需要对xml与java对象进行互转 查了一下activiti的转换xml方式,发现转换太麻烦了,需要一步步的解析xm...

8343
来自专栏分布式系统和大数据处理

ES6中的Generator函数

之前在React项目中,遇到异步请求,都是通过redux-thunk来处理,但使用这种方式,action就变得不那么纯净了。当前新的趋势是使用redux-sag...

1303
来自专栏java 成神之路

Java 动态代理 原理解析

32110
来自专栏Linux驱动

33.QT-UTF8,GBK互转

1434
来自专栏全沾开发(huā)

JavaScript异步编程:Generator与Async

1594
来自专栏阮一峰的网络日志

co 函数库的含义和用法

======================================== 以下是《深入掌握 ECMAScript 6 异步编程》系列文章的第三篇。 ...

3325

扫码关注云+社区