青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 7,comments - 3,trackbacks - 0

 1871: Jogging Trails


ResultTIME LimitMEMORY LimitRun TimesAC TimesJUDGE
3s8192K5917Standard
Gord is training for a marathon. Behind his house is a park with a large network of jogging trails connecting water stations. Gord wants to find the shortest jogging route that travels along every trail at least once.

Input consists of several test cases. The first line of input for each case contains two positive integers: n <= 15, the number of water stations, and m < 1000, the number of trails. For each trail, there is one subsequent line of input containing three positive integers: the first two, between 1 and n, indicating the water stations at the end points of the trail; the third indicates the length of the trail, in cubits. There may be more than one trail between any two stations; each different trail is given only once in the input; each trail can be travelled in either direction. It is possible to reach any trail from any other trail by visiting a sequence of water stations connected by trails. Gord's route may start at any water station, and must end at the same station. A single line containing 0 follows the last test case.

For each case, there should be one line of output giving the length of Gord's jogging route.

Sample Input

4 5
1 2 3
2 3 4
3 4 5
1 4 10
1 3 12
0

Output for Sample Input

41





古老的圖論問題:中國郵遞員問題,曾經(jīng)在某個圖論書上看過,之后就沒有之后了......
題目大意很簡單:給一無向網(wǎng)絡N,從點1出發(fā),每條邊至少進過一次后回到點1。
思路:(copy別人的)
1. 先解釋下"度"的概念, 對于無向圖中某結點, 它和n條邊相連, 就稱它的度為n. (有向圖還分出度入度, 這里簡化了, 不管)

2. 參考歐拉回路的概念, 無向圖存在歐拉回路, 當前僅當所有點度數(shù)均為偶數(shù). 
證明比較簡單, 因為走完一條回路, 對于所有點均進去一次, 出來一次. 故, 對于任意點的度數(shù),都是成對的在"消耗".

3. 題中所描述的回路, 有重復經(jīng)過某邊, 這沒關系. 現(xiàn)在假設郵遞員按題目要求走了一條最短的回路P.
那么, 把P所有重復經(jīng)過的邊, 拆開. 即假設三次經(jīng)過邊L, 則我們可以人為的在原圖上多加兩條邊, 對于所有重復經(jīng)過的邊都這樣做. 修改后的圖記為G2. (原圖為G)
對于G2, 郵遞員走的回路, 即為此圖的歐拉回路. 這是重點. (其實很好想, 因為G2中的每條邊都僅被郵遞員走過一次.)

4. 原問題就可以轉化為, 如何把G添加一些邊, 變成G2
而G2所有點度數(shù)均為偶數(shù)(這是肯定的, 因為G2存在歐拉回路)
故轉化為, 如何把G中某些邊復制x次, 從而消滅G中的奇點(度數(shù)為奇數(shù)的點).

5. 可能有點暈, 舉個例子
圖G只有兩個點a和b, 一條邊連著ab, 那么ab均為奇點, 要消滅掉, 就把ab之間連線復制一次(因為你不可能隨便給它加一條不存在的..)
然后變成兩條邊連著ab. 從G2的角度看, 是歐拉圖了, 對應成G, 就是把這條邊走了兩次而已.

6. 奇點總是成對的被消滅, 就算兩個奇點不互通, 而是經(jīng)過很多點才能連通, 那也要連出一條路徑來, 以消滅這對奇點.

7. 那就好辦了.把所有奇點找出來, 然后配對, 如果某種配對方式代價最小, 即為所求.
這里還要用上floyd, 求最短路

8. 配對算法也要比較好, 裸著配大概會超時, 這個懶得說了.. 如果不會, 直接看代碼吧.

給點扼要注釋, deg記錄度數(shù), mp記錄最短路. u記錄遞歸時各點是否已配對. (偶點直接被記為已配對. 遞歸時只路過)
dfs返回在當前此種u記錄的配對情況下, 把未配對的匹配完, 最小代價是多少

還是提一句吧, 每次配對時, 配對中的第一個可以直接取隊列中的第一個沒有配對的元素(其實隨便取都行). 第二個, 循環(huán)一次剩下的即可.
因為配對是不關心順序的, 所以第一個可以想怎么取都行. 為了方便, 就第一個了.

代碼:
#include <cstdio>
#include 
<cstring>
#include 
<cmath>
#include 
<iostream>
#define N 17
#define inf 1 << 20
using namespace std;

int deg[N], map[N][N], u[N];
int ans, n, m;

int min(int a, int b)
{
    
if (a > b) return b;
    
return a;
}

int slove()
{
    
int i, j, rnt = inf;
    
for (i = 0; i < n; ++i)
    
if (!u[i]) break;
    
if (i == n) return 0;
    u[i] 
= 1;
    
for (j = i + 1; j < n; ++j)
    {
        
if (!u[j]) u[j] = 1, rnt = min(rnt, slove() + map[i][j]), u[j] = 0;
    }
    u[i] 
= 0;
    
return rnt;
}

int main()
{
    
while (scanf("%d"&n) && n)
    {
        memset(u, 
0sizeof(u));
        memset(deg, 
0sizeof(deg));
        
for (int i = 0; i < n; ++i)
            
for (int j = 0; j < n; ++j)
            map[i][j] 
= inf;
        ans 
= 0;
        scanf(
"%d"&m);
        
for (int i = 1; i <= m; ++i)
        {
            
int a, b, c;
            scanf(
"%d%d%d"&a, &b, &c);
            ans 
+= c;
            a
--; b--;
            deg[a]
++;
            deg[b]
++;
            map[a][b] 
= map[b][a] = min(map[a][b], c);
        }
        
for (int k = 0; k < n; ++k)
            
for (int i = 0; i < n; ++i)
                
for (int j = 0; j < n; ++j)
                {
                    map[i][j] 
= min(map[i][j], map[i][k] + map[k][j]);
                }
        
for (int i = 0; i < n; ++i)
        
if (deg[i] % 2 == 0) u[i] = 1;
        printf(
"%d\n", ans + slove());
    }
    
return 0;
}
posted on 2011-10-15 22:13 LLawliet 閱讀(265) 評論(0)  編輯 收藏 引用 所屬分類: 圖論
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            91久久精品国产91性色tv| 欧美亚洲一区三区| 99re热这里只有精品视频 | 亚洲国产成人一区| 久久精品人人做人人综合| 欧美一区二区三区在线视频| 尤物九九久久国产精品的分类| 亚洲电影网站| 国产精品中文字幕在线观看| 一本久久综合亚洲鲁鲁| 亚洲乱码国产乱码精品精| 国产精品久久久久久模特| 久久综合网hezyo| 欧美不卡视频一区发布| 99国产精品久久久久久久| 99re成人精品视频| 91久久线看在观草草青青| 性欧美1819sex性高清| 99精品视频免费| 久久中文字幕一区| 亚洲午夜电影网| 欧美另类变人与禽xxxxx| 伊人久久综合97精品| 亚洲天堂视频在线观看| 亚洲日韩视频| 亚洲一区二区免费视频| 一区二区国产日产| 欧美女激情福利| 欧美高清不卡在线| 亚洲国产精品久久久久婷婷884| 午夜一区二区三区在线观看| 性欧美videos另类喷潮| 国产精品推荐精品| aa亚洲婷婷| 中文成人激情娱乐网| 国产午夜亚洲精品不卡| 国产精品亚洲综合色区韩国| 久久成人亚洲| 欧美综合国产精品久久丁香| 在线观看日韩专区| 亚洲国产精品成人综合色在线婷婷| 久久婷婷一区| 午夜精品一区二区三区四区 | 美女脱光内衣内裤视频久久影院| 久久久久久久一区二区三区| 一区二区亚洲精品| 亚洲图色在线| 久久久99爱| 亚洲欧洲免费视频| 欧美日韩在线不卡一区| 亚洲欧美在线高清| 欧美黄色片免费观看| 欧美综合国产精品久久丁香| 日韩视频在线免费| 国产精品精品视频| 欧美国产免费| 性感少妇一区| 亚洲调教视频在线观看| 亚洲三级视频在线观看| 久久国产精品99久久久久久老狼 | 国产一区二区三区日韩欧美| 免费在线日韩av| 久久夜色精品国产亚洲aⅴ| 一本大道久久精品懂色aⅴ| 欧美aⅴ一区二区三区视频| 先锋影音国产精品| 亚洲一区二区三区午夜| 亚洲美女网站| 免费亚洲电影在线| 久久精品国产免费观看| 9人人澡人人爽人人精品| 亚洲国产精品v| 在线免费精品视频| 国产一区二区主播在线| 国产麻豆精品theporn| 欧美日韩专区| 亚洲欧美日本国产专区一区| 亚洲久久一区二区| 99精品免费| 亚洲一级在线| 欧美中文字幕| 久久深夜福利| 亚洲成色777777女色窝| 亚洲精品在线视频| 亚洲一区3d动漫同人无遮挡| 99精品热视频只有精品10| 亚洲欧美日韩精品久久久久| 欧美在线观看视频一区二区三区| 久久米奇亚洲| 欧美另类亚洲| 激情综合自拍| 亚洲影院污污.| 免费成人网www| 在线综合视频| 欧美黄在线观看| 狠狠综合久久| 先锋影音网一区二区| 欧美激情视频一区二区三区免费| aa级大片欧美三级| 欧美成人在线免费视频| 国产精品免费网站| 91久久久久久久久| 久久免费黄色| 亚洲色无码播放| 欧美激情女人20p| 一区二区在线视频| 亚洲欧美日韩在线播放| 亚洲精品一区二区三区蜜桃久| 久久婷婷蜜乳一本欲蜜臀| 国产欧美69| 久久久av水蜜桃| 午夜日韩福利| 国产视频一区免费看| 亚洲一区一卡| 亚洲免费人成在线视频观看| 欧美日韩一级片在线观看| 99pao成人国产永久免费视频| 欧美极品在线播放| 欧美成人免费在线视频| 亚洲国产精品免费| 免费一级欧美在线大片| 免费看精品久久片| 日韩图片一区| 亚洲一区二区视频在线| 国产欧美日韩在线观看| 久久久国产视频91| 亚洲国产成人av在线| 欧美区日韩区| 先锋影音一区二区三区| 欧美一区不卡| 亚洲国产婷婷| 亚洲专区免费| 怡红院精品视频| 亚洲精品123区| 国产人成一区二区三区影院| 久久影视精品| 国产精品成人va在线观看| 久久久久国色av免费观看性色| 久久男人av资源网站| 亚洲一区二区三区久久| 欧美一区二区三区免费观看视频| 激情小说另类小说亚洲欧美| 亚洲国产欧美日韩| 狠狠入ady亚洲精品| 日韩亚洲精品在线| 影音先锋久久资源网| 日韩一区二区精品视频| 亚洲国产精品va| 久久久久se| 国产揄拍国内精品对白| 在线一区视频| 国内久久视频| 欧美一区亚洲一区| 99精品热视频只有精品10| 美腿丝袜亚洲色图| 久久在线免费视频| 国语自产在线不卡| 亚洲欧美国产视频| 亚洲欧美在线免费观看| 欧美日韩日本视频| 国产精品99久久不卡二区| 一区二区国产日产| 欧美精品久久99| 99精品99久久久久久宅男| 一区二区三区四区国产| 一本一本久久| 亚洲特色特黄| 国产色综合天天综合网| 欧美一区永久视频免费观看| 老鸭窝91久久精品色噜噜导演| 亚洲第一级黄色片| 欧美日本免费| 午夜精品亚洲| 欧美风情在线观看| 日韩视频精品在线| 国产精品白丝av嫩草影院| 性色av一区二区三区红粉影视| 久久精品一区二区三区不卡| 亚洲国产一区二区三区高清| 欧美精品一区三区| 欧美在线影院| 亚洲大胆在线| 午夜精品久久久久影视| 在线日韩电影| 国产精品尤物| 欧美日韩黄视频| 久久精品国产亚洲精品| 夜夜嗨av一区二区三区网页| 久久久久久国产精品一区| 亚洲一区制服诱惑| 亚洲九九精品| 在线不卡中文字幕| 国产欧美一区二区精品仙草咪| 亚洲欧美激情诱惑| 亚洲精品小视频| 在线视频你懂得一区| 亚洲大胆人体在线| 亚洲国产精品123| 亚洲精品日本| 午夜久久久久久|