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
  • 相关阅读:
    URL记录
    Mongodb集群节点故障恢复场景分析(转)
    IO 和 NIO 的区别
    VUE 前端项目优化方法
    缓存的穿透和雪崩
    接口如何处理重复请求?
    线程池构造类 ThreadPoolExecutor 的 5 个参数
    大型网站在架构上应当考虑哪些问题
    synchronized 和 lock 的区别
    JVM虚拟机 YGC和FGC发生的具体场景
  • 原文地址:https://www.cnblogs.com/ismdeep/p/2624410.html
Copyright © 2011-2022 走看看