zoukankan      html  css  js  c++  java
  • uva 490

    uva 490 - Rotating Sentences

    很奇葩的一个题目,题意有多不清楚我就不说了,题目很简单,但是坑很多,一个比一个大,具体可以百度之,但是……

    同样思路的代码别人AC了我却WA,慢慢一步一步比较之后,才发现这题目(还是uva这个古老的OJ?)的奇葩之处。

    网上的代码怎么尼玛的都是用一个数组去存储字符串的长度呢?虽然说会比较省时,但是我直接用string的size()函数怎么就错了呢!!!

    这个是AC的代码

    #include <iostream>
    #include <string>
    using namespace std;
    int main()
    {
        string s[102];
        int index = 0, maxLong = -1, len[102];
        
        while (getline(cin, s[index]))
        {
            len[index] = s[index].size();
            if (len[index] > maxLong)
                maxLong = s[index].size();
            
            index++;
        }
        
        for (int j = 0; j < maxLong; ++j)
        {
            for (int i = index-1; i >= 0; --i)
            {
                if (j < s[i].size())
                    cout << s[i][j];
                else
                    cout << " ";
            }    
            cout << endl;
        }
    }
    View Code

    这个是WA的代码

    #include <iostream>
    #include <string>
    using namespace std;
    int main()
    {
        string s[102];
        int index = 0, maxLong = -1, len[102];
        
        while (getline(cin, s[index]))
        {
            if (s[index].size() > maxLong)
                maxLong = s[index].size();
            
            index++;
        }
        
        for (int j = 0; j < maxLong; ++j)
        {
            for (int i = index-1; i >= 0; --i)
            {
                if (j < s[i].size())
                    cout << s[i][j];
                else
                    cout << " ";
            }    
            cout << endl;
        }
    }
    View Code

    两个程序的唯一不同之处就是While循环体里面的if语句:

    若直接用size()去比较一个变量就错了;

    若将size()先存起来再去比较就对了。

    思考良久,原因未知,从没遇过。

    难道是新大陆?!

  • 相关阅读:
    springboot 搭建druid数据监控
    spring-boot编写简易mvc
    解决rabbitmq 开启启动报错
    intelij idea 使用maven打包报错 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1
    php foreach循环引用的问题
    手把手编写hyperf JsonRpc demo
    centos8配置nfs教程本机系统mac
    Java基础的练习题
    Java——循环
    Java——数组
  • 原文地址:https://www.cnblogs.com/chenyg32/p/3185120.html
Copyright © 2011-2022 走看看