zoukankan      html  css  js  c++  java
  • zoj1151 zoj1295 Word Reversal 字符串的简单处理

    Word Reversal

    Time Limit: 2 Seconds      Memory Limit:65536 KB

    For each list of words, output a line with each word reversed without changing the order of the words.


    This problem contains multiple test cases!

    The first line of a multiple input is an integer N, then a blank line followed by N input blocks. Each input block is in the format indicated in the problem description. There is a blank line between input blocks.

    The output format consists of N output blocks. There is a blank line between output blocks.


    Input

    You will be given a number of test cases. The first line contains a positive integer indicating the number of cases to follow. Each case is given on a line containing a list of words separated by one space, and each word contains only uppercase and lowercase letters.


    Output

    For each test case, print the output on one line.


    Sample Input

    1

    3
    I am happy today
    To be or not to be
    I want to win the practice contest


    Sample Output

    I ma yppah yadot
    oT eb ro ton ot eb
    I tnaw ot niw eht ecitcarp tsetnoc


    http://blog.csdn.net/AC_0_summer/article/details/44747401


    #include<cstdio>
    #include<cstdlib>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    char s[500];
    void _S()
    {
        int L=0;
        s[L++]=getchar();
        while(s[L-1]!='
    '){
            if(s[L-1]==' ')
            {
              for(int i=L-2;i>=0;i--)
               putchar(s[i]);
               printf(" ");
              L=0;
            }
            s[L++]=getchar();
        }
        for(int i=L-2;i>=0;i--)
         putchar(s[i]);
        printf("
    ");
        return ;
    }
    
    int main()
    {
        int n,T;
    
        scanf("%d",&T);
        while(T--){
          scanf("%d
    ",&n);//过滤换行符 
          while(n--) _S();
          if(T) printf("
    "); //此题容易因为此处PE 
        }
        return 0;
    }
    zoj1295:
    #include<cstdio>
    #include<cstdlib>
    #include<iostream>
    using namespace std;
    void _S()
    {
        char s[71];
        int num=0;
        char c=getchar();
        while(true){
            if(c=='
    '){
                for(int i=num;i>=1;i--) cout<<s[i];
                cout<<endl;
                return ;
            }
           s[++num]=c;
           c=getchar();
        }
    }
    int main()
    {
        int n;
        scanf("%d
    ",&n);
        while(n--)
            _S()
        return 0;
    } 
    
    
    
    

    为什么感觉题目没有解释很清楚,让那么多人PE。。。。。。。。。。。

    当然本题处理方式有很多,也可以每一行输入后再处理。个人属于习惯单个字符输入的那种(此时要注意过滤换行符什么的)。


  • 相关阅读:
    【百度地图API】如何获取行政区域的边界?(转载)
    Javascript原型,原型链?有什么特点?
    什么是闭包?为什么使用闭包?闭包的缺点?
    为什么利用多个域名来存储网站资源会更有效?
    javascript如何处理很多数据,类似分页切换
    关于模板引擎handlebars.js基本用法
    关于CSS3的filter(滤镜) 属性
    App里面如何正确显示用户头像
    jQuery性能优化的一些参考建议
    文字超出显示省略号
  • 原文地址:https://www.cnblogs.com/hua-dong/p/7603978.html
Copyright © 2011-2022 走看看