• <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>

            superman

            聚精會(huì)神搞建設(shè) 一心一意謀發(fā)展
            posts - 190, comments - 17, trackbacks - 0, articles - 0
               :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            Section 2.4 - Bessie Come Home

            Posted on 2009-04-23 18:44 superman 閱讀(83) 評(píng)論(0)  編輯 收藏 引用 所屬分類: USACO
             1 #include <queue>
             2 #include <iostream>
             3 
             4 using namespace std;
             5 
             6 //a..z -> 0..25
             7 //A..Y -> 26..51
             8 
             9 int main()
            10 {
            11     freopen("comehome.in""r", stdin);
            12     freopen("comehome.out""w", stdout);
            13 
            14     int n;
            15     cin >> n;
            16 
            17     int map[52][52= { 0 };
            18 
            19     bool x[52= { false };
            20 
            21     char s, t; int l;
            22     for (int i = 0; i < n; i++)
            23     {
            24         cin >> s >> t >> l;
            25 
            26         if (s >= 'a' && s <= 'z')
            27             s -= 'a';
            28         else
            29             s -= 'A' - 26;
            30 
            31         if (t >= 'a' && t <= 'z')
            32             t -= 'a';
            33         else
            34             t -= 'A' - 26;
            35 
            36         x[s] = x[t] = true;
            37 
            38         int a = map[s][t];
            39         int b = map[t][s];
            40         int c;
            41 
            42         if (a == 0) a = INT_MAX;
            43         if (b == 0) b = INT_MAX;
            44         c = min(a, b);
            45 
            46         map[s][t] = map[t][s] = min(c, l);
            47     }
            48 
            49     //spfa
            50     queue <int> q;
            51     int f[52];
            52 
            53     q.push(51);
            54     f[51= 0;
            55     for (int i = 0; i < 51; i++)
            56         f[i] = INT_MAX;
            57 
            58     while (q.empty() == false)
            59     {
            60         int cp = q.front(); q.pop();
            61 
            62         for (int i = 0; i < 51; i++)
            63             if (x[i] && map[cp][i] && f[cp] + map[cp][i] < f[i])
            64             {
            65                 f[i] = f[cp] + map[cp][i];
            66                 q.push(i);
            67             }
            68     }
            69 
            70     int ans = INT_MAX;
            71     char c;
            72     for (int i = 26; i < 51; i++)
            73         if (x[i] && f[i] < ans)
            74         {
            75             ans = f[i];
            76             c = i - 26 + 'A';
            77         }
            78 
            79     cout << c << ' ' << ans << endl;
            80 
            81     return 0;
            82 }
            83 
            久久久久久久综合日本| 日本久久久久亚洲中字幕| 久久天堂AV综合合色蜜桃网| 日本精品久久久久影院日本| 99热都是精品久久久久久| 久久青青草原国产精品免费| 亚洲成色999久久网站| 久久亚洲欧美日本精品| 久久免费视频网站| AA级片免费看视频久久| 国产成人综合久久精品尤物| 久久青青草原综合伊人| 国産精品久久久久久久| 狠狠色综合久久久久尤物| 婷婷久久综合九色综合绿巨人| 欧美亚洲另类久久综合婷婷| 狠狠色丁香婷婷久久综合| 青青草原精品99久久精品66| 香蕉久久夜色精品升级完成| 久久国产精品成人影院| 精品久久久久久久久久久久久久久| A级毛片无码久久精品免费| 久久久久久久久66精品片| 亚洲国产精品无码成人片久久| 日韩av无码久久精品免费| 国产精品久久久久久影院 | 国产精品欧美久久久久无广告| 国产亚洲成人久久| 久久免费看黄a级毛片| 欧美激情精品久久久久| 久久久久久久久久久久久久| 久久se精品一区二区| 久久99热这里只有精品66| 精品久久久久久| 伊人色综合久久天天人手人婷| 亚洲嫩草影院久久精品| 老男人久久青草av高清| 精品99久久aaa一级毛片| 久久久久久国产精品免费无码 | 久久亚洲av无码精品浪潮| 色综合久久中文字幕无码|