Description
你弟弟刚刚学会写英语的一(one)、二(two)和三(three)。他在纸上写了好些一二三,可惜有些字母写错了。已知每个单词最多有一个字母写错了(单词长度肯定不会错),你能认出他写的啥吗?
Input
第一行为单词的个数(不超过10)。以下每行为一个单词,单词长度正确,且最多有一个字母写错。所有字母都是小写的。
Output
对于每组测试数据,输出一行,即该单词的阿拉伯数字。输入保证只有一种理解方式。
Sample Input
3
owe
too
theee
Sample Output
1
2
3
HINT
代码
#include<iostream>
#include<cstring>
using namespace std;
main()
{
string a;
int n;
cin>>n;
while(n--){
cin>>a;
if(a.length()==5){cout<<"3"<<endl;}
else {int k=0;
if(a[0]=='o') k++;
if(a[1]=='n') k++;
if(a[2]=='e') k++;
if(k>1)cout<<"1"<<endl;
else cout<<"2"<<endl;
}
}
}
在获得a的长度时,开始用sizeof(a),无果,原因待究,strlen()函数只能接受char*类型,即求数组的长度,在stl库中a.lenth()可获得a的长度,这里a看做对象