163. [USACO Mat07] 牛语

☆ 输入文件:latin.in 输出文件:latin.out简单对比时间限制:1s 内存限制:128 MB

译: zqzas

奶牛们听说猪发明了一种秘密语言,叫做”猪语”,因为猪不想让FJ知道他们在商量什么.奶牛们也感觉这样很不错,所以她们想发明他们自己的语言,牛语.

想把一个普通的英语单词转换成牛语很简单.如果一个单词的以一个元音字母(‘a’,’e’,’i’,’o’,’u)开头,那么只需在这个单词的结尾加上“cow”.例如,”udder”需要变成“uddercow”;如果一个单词的第一个字母不是元音字母,那么只需把这个单词的第一个字母放到单词结尾,然后再在结尾加上“ow”.例如“farmer”需要变成“armerfow”.所以”thecows escape at dawn”就会变成”hetow owscow escapecow atcowawndow.” 奶牛们自信地以为这样就可以不让FJ知道他们的”越狱”计划.

可惜奶牛们都不是语言学家,他们觉得这样的翻译太无聊了,所以这个任务就交给你了. 你需要将N (1 ≤ N ≤100)个英语单词翻译成牛语,单词长度在3到40之间.

输入格式:

第1行: 一个整数N.第2行到第N+1行: 每行一个单词.

输出格式:

第1行到第N行,每行一个相应的牛语单词.

样例输入:

5

udder

farmer

milk

aaa

zzz

样例输出:

uddercow

armerfow

ilkmow

aaacow

思路:

个人认为这是一道很简单的字符串处理题目,上来先判断第一个字母是不是“a,e,i,u”里面的一个,如果是的话就把第一个取出来然后在末尾加上。最后在根据情况加山cow或者ow

 1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<cstring> 5 #include<algorithm> 6 #include<cstdlib> 7 using namespace std; 8 int n; 9 string a;10 string b="cow";11 string c="ow";12 int main()13 {14     freopen("latin.in","r",stdin);15     freopen("latin.out","w",stdout);16     scanf("%d",&n);17     for(int i=1;i<=n;i++)18     {19         cin>>a;20         //scanf("%s",&a);21         if(a[0]=='a'||a[0]=='e'||a[0]=='i'||a[0]=='o'||a[0]=='u')22         {23             a=a+b;24             //printf("%s\n",a);25             cout<<a<<endl;    26         }27         else 28         {29             int l=a.length();30             a=a+a[0];31             a=a+c;32             for(int i=1;i<=a.length()-1;i++)33             cout<<a[i];34             //printf("%d",a[i]);35             cout<<endl;36         }37     }38     39     40     41     fclose(stdin);42     fclose(stdout);43     return 0;44 }

View Code

有时我们选择改变,并非经过深思熟虑,

163. [USACO Mat07] 牛语

相关文章:

你感兴趣的文章:

标签云: