一个模拟水题,可以看出,“one”,“two”,“three”之中,“three”的长度就和其他两个不一样,而“one”和“two”虽然都有“o”字母,但是也只有一个共同字母并且处在不同的位置,而字母又只错一个,这样我们可以通过每个字符和“one”的每个字符比较,如果符合其中两项就肯定是“one”,否则为“two”,这样我们就可以根据他们的特征来判断了。WA了一次,因为当时只判断了错一个字母而没有判断全部都对的情况。打脸!


题目:https://ac.2333.moe/Problem/view.xhtml?id=1103


代码:

Memory: 220 KB
Time: 0 MS
Language: G++
Result: Accepted
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int x, len, z1, z2, z3;
char str[10];
int main()
{
    while(~scanf("%d", &x) && x)
    {
        while(x--)
        {
            scanf("%s", &str);
            len = strlen(str);
            if(len==5)printf("3\n");
            else
            {
                z1 = str[0]=='o'?1:0;
                z2 = str[1]=='n'?1:0;
                z3 = str[2]=='e'?1:0;
                if((z1+z2+z3)>=2)printf("1\n");
                else printf("2\n");
            }
        }
    }
    return 0;
}