• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            USACO chapter 1 section 1.2 Milking Cows

            USER: tianbing tianbing [tbbd4261]
            TASK: milk2
            LANG: C++

            Compiling...
            Compile: OK

            Executing...
               Test 1: TEST OK [0.011 secs, 2968 KB]
               Test 2: TEST OK [0.000 secs, 2968 KB]
               Test 3: TEST OK [0.011 secs, 2968 KB]
               Test 4: TEST OK [0.022 secs, 2968 KB]
               Test 5: TEST OK [0.011 secs, 2968 KB]
               Test 6: TEST OK [0.011 secs, 2968 KB]
               Test 7: TEST OK [0.011 secs, 2968 KB]
               Test 8: TEST OK [0.000 secs, 2968 KB]

            All tests OK.

            Your program ('milk2') produced all correct answers!  This is your
            submission #2 for this problem.  Congratulations!

            剛開始以結(jié)束時(shí)間排序,WA了一次,后來想想要以開始時(shí)間排序才是正確的
            1,用s 和 e分別紀(jì)錄一段時(shí)間的開始和結(jié)束,分別是最大和最小的值
            如果兩段時(shí)間為1  3 ,2  6的話,則s=1,e=6 不斷更新,紀(jì)錄e - s的最大值即可
            2, 間隔嘛直接拿當(dāng)前的開始時(shí)間和前面連續(xù)的最大結(jié)束時(shí)間e比較即可,同樣紀(jì)錄最大的

            改代碼有點(diǎn)問題,修正在下面。

             1/*
             2ID:tbbd4261
             3LANG:C++
             4PROG:milk2
             5*/

             6#include<iostream>
             7#include<fstream>
             8#include<algorithm>
             9using namespace std;
            10 struct milk
            11{
            12 int start;
            13 int end;
            14}
            a[5005]; 
            15
            16bool f(struct milk a,struct milk b)
            17{
            18     return a.start<b.start;
            19}

            20int main()
            21{
            22    ifstream cin("milk2.in");
            23    ofstream cout("milk2.out");
            24    int n,i,s,e,maxm=0,maxt=0;
            25    cin>>n;
            26    for(i=1; i<=n; i++)
            27    cin>>a[i].start>>a[i].end;
            28    sort(a+1,a+1+n,f);
            29    s=a[1].start; e=a[1].end;
            30    for(i=1;i<=n;i++)
            31    {
            32      if(a[i].start>e)
            33      {
            34        if(a[i].start-> maxt)maxt=a[i].start-e;
            35        s=a[i].start; e=a[i].end;
            36      }

            37      else {
            38           if(a[i].end>e) e=a[i].end; 
            39           if(e->maxm)maxm=e-s; 
            40           }

            41    }

            42    cout<<maxm<<' '<<maxt<<endl;
            43    //system("pause");
            44    
            45    return 0;
            46}

             KK朋友指出錯(cuò)誤后修正:
            #include<iostream>
            #include
            <fstream>
            #include
            <algorithm>
            using namespace std;
            struct milk
            {
             
            int start;
             
            int end;
            }a[
            5005]; 

            bool f(struct milk a,struct milk b)
            {
                 
            return a.start<b.start;
            }
            int main()
            {
                
            //ifstream cin("milk2.in");
                
            //ofstream cout("milk2.out");
                int n,i,s,e,maxm=0,maxt=0;
                cin
            >>n;
                
            for(i=1; i<=n; i++)
                cin
            >>a[i].start>>a[i].end;
                sort(a
            +1,a+1+n,f);
                s
            =a[1].start; e=a[1].end;
                
            for(i=1;i<=n;i++)
                {
                  
            if(a[i].start>e)
                  {
                    
            if(a[i].start-> maxt)maxt=a[i].start-e;
                    s
            =a[i].start; e=a[i].end;
                    
            if(e-s>maxm)maxm=e-s; //這時(shí)候沒有檢查是否比maxm更大。修改的地方。
                  }
                  
            else {
                       
            if(a[i].end>e) e=a[i].end; 
                       
            if(e->maxm)maxm=e-s; 
                       }
                }
                cout
            <<maxm<<' '<<maxt<<endl;
                system(
            "pause");
                
                
            return 0;
            }

            posted on 2010-05-18 22:00 田兵 閱讀(1399) 評(píng)論(2)  編輯 收藏 引用 所屬分類: USACO

            評(píng)論

            # re: USACO chapter 1 section 1.2 Milking Cows[未登錄] 2010-08-21 15:50 kk

            如果input改成
            4
            100 200
            201 302
            303 402
            403 503

            你的code跑出來是錯(cuò)得
              回復(fù)  更多評(píng)論   

            # re: USACO chapter 1 section 1.2 Milking Cows 2010-08-21 19:01 田兵

            @kk

            謝謝哥們指出錯(cuò)誤。
            對于你的那組數(shù)據(jù)應(yīng)該輸出
            101 1
            已修改。   回復(fù)  更多評(píng)論   

            <2010年8月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(2)

            隨筆分類(65)

            隨筆檔案(65)

            文章檔案(2)

            ACM

            搜索

            積分與排名

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            久久国产精品-久久精品| 久久强奷乱码老熟女网站| 亚洲精品高清久久| 国产精品免费久久久久电影网| 久久久受www免费人成| 久久香综合精品久久伊人| 久久777国产线看观看精品| 国产三级观看久久| 一本色道久久HEZYO无码| 日本精品久久久久中文字幕| 亚洲精品无码久久一线| 国内精品久久久久久久久电影网 | 久久精品中文字幕无码绿巨人| 久久99国产综合精品免费| 婷婷久久综合九色综合九七| 97久久久精品综合88久久| 无码八A片人妻少妇久久| 狠狠色伊人久久精品综合网 | 久久久久亚洲av无码专区喷水| 国产午夜福利精品久久| 久久久无码精品亚洲日韩京东传媒 | 亚洲人成无码www久久久| 久久96国产精品久久久| 色婷婷综合久久久中文字幕| 色天使久久综合网天天| 久久久久国产日韩精品网站 | 久久久久青草线蕉综合超碰| 久久精品国产99久久香蕉| 狠狠色婷婷综合天天久久丁香 | www.久久热.com| 日韩精品久久无码人妻中文字幕| 一本久久a久久精品综合香蕉| 91亚洲国产成人久久精品网址| 奇米影视7777久久精品| 亚洲av成人无码久久精品| 亚洲AV无码久久精品色欲| 亚洲精品美女久久久久99| 五月丁香综合激情六月久久| 无码伊人66久久大杳蕉网站谷歌 | 久久久久青草线蕉综合超碰 | 韩国三级大全久久网站|