• <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>
            #include? < stdio.h >
            #include?
            < limits.h >
            #include?
            < stdlib.h >
            #include?
            < math.h >
            #include?
            < string .h >

            #define ?N?110

            int ?graph[N][N];
            int ?rank[N];
            int ?value[N];
            int ?m,?n,?len;

            bool ??findrank(? int ?t?)
            {
            ????
            for (? int ?i = ? 0 ;?i < ?t;? ++ i?)
            ????
            if (?value[i] == ?t?)? return ? true ;
            ????
            ????
            return ? false ;
            }


            int ?dis(? int ?Rank?)
            {
            ????
            bool ?visite[N];
            ????
            int ??result[N];
            ????rank[
            0 ] = ?Rank;
            ????
            ????
            for (? int ?i = ? 1 ;?i <= ?n;? ++ i?)?
            ????
            {
            ????????
            int ?t = ?Rank - ?rank[i];
            ????????
            ????????
            if (?t <= ?m? && ?t >= ? 0 ?)? {?visite[i] = ? false ;??result[i] = ?graph[ 0 ][i];?}
            ????????
            else ????????????????? {?visite[i] = ? true ;???result[i] = ? - 1 ;?}
            ????}

            ????
            ????visite[
            0 ] = ? true ;
            ????
            for (? int ?t = ? 1 ;?t <= ?n;? ++ t?)
            ????
            {
            ????????
            int ??min = ?INT_MAX;
            ????????
            int ??k = ? - 1 ;
            ????????
            ????????
            for (? int ?i = ? 0 ;?i <= ?n;? ++ i?)
            ????????
            if (? ! visite[i]? && ?result[i] >= ? 0 ? && ?result[i] < ?min??)
            ????????
            {
            ????????????min
            = ?result[i];
            ????????????k
            = ?i;
            ????????}

            ????????
            if (?k == ? - 1 ?)? break ;
            ????????
            ????????visite[k]
            = ? true ;
            ????????
            for (? int ?i = ? 1 ;?i <= ?n;? ++ i?)
            ????????
            {
            ????????????
            if (? ! visite[i]? && ??graph[k][i] >= ? 0 ? && ?result[k] >= ? 0 ?
            ????????????????????????
            && ?(?result[k] + ?graph[k][i] < ?result[i]? || ?result[i] == ? - 1 ?)?)
            ????????????result[i]
            = ?result[k] + ?graph[k][i];
            ????????}
            ?
            ????}

            ?
            ????
            return ?result[ 1 ];
            }


            int ?main()
            {
            ????scanf(
            " %d%d " ,? & m,? & n);
            ????len
            = ? 0 ;
            ????
            ????memset(?graph,?
            - 1 ,? sizeof ( int ) * N * N?);
            ????
            ????
            for (? int ?i = ? 1 ;?i <= ?n;? ++ i?)
            ????
            {
            ????????
            int ?va,?ra,?nn;
            ????????
            ????????scanf(
            " %d%d%d " ,? & va,? & ra,? & nn?);
            ????????graph[
            0 ][i] = ?va;
            ????????rank[i]
            = ?ra;
            ????????
            ????????
            if (? ! findrank(?ra?)?)?value[len ++ ] = ?ra;
            ????????
            ????????
            for (? int ?j = ? 0 ;?j < ?nn;? ++ j?)
            ????????
            {
            ????????????
            int ?a,?b;
            ????????????scanf(
            " %d%d " ,? & a,? & b);
            ????????????
            ????????????graph[a][i]
            = ?b;
            ????????}

            ????}
            ????
            ????
            ????
            int ?min = ?INT_MAX;
            ????
            for (? int ?i = ? 0 ;?i < ?len;? ++ i?)
            ????????
            {????????
            ????????????
            int ?t = ?dis(?value[i]?);
            ????????????
            ????????????
            if (?t < ?min? && ?t != ? - 1 ?)?min = ?t;
            ????????}

            ????????
            ????printf(
            " %d\n " ,?min?);
            ????
            ????
            return ? 0 ;
            }

            posted on 2008-10-29 21:01 Darren 閱讀(346) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 圖論
            久久久久一级精品亚洲国产成人综合AV区| 欧美亚洲国产精品久久蜜芽| 精品久久久久一区二区三区 | 激情五月综合综合久久69| 久久久久成人精品无码| 亚洲AV成人无码久久精品老人| 少妇人妻88久久中文字幕| 久久国产一区二区| 日韩AV无码久久一区二区| 国产亚洲精午夜久久久久久| 18禁黄久久久AAA片| 国产精品99精品久久免费| 亚洲日本va午夜中文字幕久久| 国产激情久久久久影院老熟女免费 | 99久久人人爽亚洲精品美女| 97精品依人久久久大香线蕉97| 久久国产综合精品五月天| 久久国产劲爆AV内射—百度| 久久精品国产亚洲一区二区三区 | 久久久久国色AV免费看图片| av色综合久久天堂av色综合在| 国产三级精品久久| 精品一区二区久久久久久久网站| 婷婷国产天堂久久综合五月| 久久久久婷婷| 26uuu久久五月天| 色综合久久综精品| 国内精品久久久久久野外| 精品久久人人爽天天玩人人妻| 久久精品成人免费观看97| 97精品伊人久久久大香线蕉| 亚洲午夜久久久久久噜噜噜| 亚洲国产精品综合久久网络 | 一本色道久久综合狠狠躁| 色综合久久夜色精品国产| 亚洲人成无码网站久久99热国产 | 亚洲国产精品无码久久一区二区 | 精品久久久久久无码中文字幕一区| 国产69精品久久久久观看软件| 精品国产91久久久久久久a| 久久93精品国产91久久综合|