zoukankan      html  css  js  c++  java
  • 【ECJTU_ACM 11级队员2012年暑假训练赛(7) K String Task】

    K - String Task
    Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u

    Description

    Petya started to attend programming lessons. On the first lesson his task was to write a simple program. The program was supposed to do the following: in the given string, consisting if uppercase and lowercase Latin letters, it:

    • deletes all the vowels,
    • inserts a character "." before each consonant,
    • replaces all uppercase consonants with corresponding lowercase ones.

    Vowels are letters "A", "O", "Y", "E", "U", "I", and the rest are consonants. The program's input is exactly one string, it should return the output as a single string, resulting after the program's processing the initial string.

    Help Petya cope with this easy task.

    Input

    The first line represents input string of Petya's program. This string only consists of uppercase and lowercase Latin letters and its length is from 1 to 100, inclusive.

    Output

    Print the resulting string. It is guaranteed that this string is not empty.

    Sample Input

    Input
    tour
    Output
    .t.r
    Input
    Codeforces
    Output
    .c.d.f.r.c.s
    Input
    aBAcAba
    Output
    .b.c.b




     1 #include <iostream>
     2 using namespace std;
     3 
     4 char iMap[12] = {'A', 'a', 'Y', 'y', 'E', 'e', 'U', 'u', 'O', 'o', 'I', 'i'};
     5 
     6 bool iInMap(char c)
     7 {
     8     bool yes = false;
     9     int flag = 11;
    10     while (!yes && flag >= 0)
    11     {
    12         if (iMap[flag] == c)
    13         {
    14             yes = true;
    15         }
    16         flag--;
    17     }
    18     return yes;
    19 }
    20 
    21 int main()
    22 {
    23     string s;
    24     while (cin >> s)
    25     {
    26         for (int i = 0; i < (int)s.length(); i++)
    27         {
    28             if (!iInMap(s[i]))
    29             {
    30                 if (s[i] >= 'A' && s[i] <= 'Z')
    31                 {
    32                     s[i] += 32;
    33                 }
    34                 cout << "." << s[i];
    35             }
    36         }
    37         cout << endl;
    38     }
    39     return 0;
    40 }
    41 
    42 // end
    43 // ism
  • 相关阅读:
    程序=算法+数据结构 的理解
    为什么有些语言可以被反编译?而有的不能?
    手机怎么访问电脑服务器上的网页
    linux一键安装
    Linux初学者必知的5个学习网站
    忘记阿里云管理终端密码怎么办
    Linux学习(CentOS-7)---磁盘分区(概念、分区方法、分区方案)
    远程桌面怎样复制本地文件听语音
    如何查看某个端口被谁占用
    cmd命令
  • 原文地址:https://www.cnblogs.com/ismdeep/p/2624410.html
Copyright © 2011-2022 走看看