Blog·Tanky WooABOUTRSS

HDOJ 1234 开门人和关门人

08 Aug 2010
这篇博客是从旧博客 WordPress 迁移过来,内容可能存在转换异常。

题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=1234


今天做了一天的题目,人都麻木了,看见这题,一看就知道是模拟。。。 懒得做了。直接去网上COPY一个。 突然看到这个代码,和我预想中的相差甚大~ 太简单了。。。

代码里有一个地方用的非常好,把timemin设置为"9", timemax="0", 而在时间的比较时,根本无需考虑细节,就按字符排序就可以了。 本体用string,要是用char数组会很麻烦的。。。。还容易出错!

#include 
#include 
using namespace std;
int main()
{
    int n,m;
    string id,openid,closeid, tr,tl,timemin,timemax;
    while(cin>>n&&n;)
    {
        while(n--)
        {
            cin>>m;
            timemin="9";
            timemax="0";

            while(m--)
            {
                cin>>id>>tr>>tl;

                if(timemin>=tr)timemin=tr,openid=id;
                if(timemax<=tl)timemax=tl,closeid=id;   
            }
            cout<<openid<<" "<<closeid<<endl;
        }
    }
    return 0;
}