• <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)  編輯 收藏 引用 所屬分類: 圖論
            人妻无码久久一区二区三区免费| 97精品伊人久久久大香线蕉 | 国产成人精品久久一区二区三区av | 国产精品亚洲综合专区片高清久久久| 精品国产乱码久久久久久人妻| 久久精品人妻一区二区三区| 国产成人精品久久综合| 成人午夜精品久久久久久久小说| 久久亚洲日韩精品一区二区三区| 亚洲熟妇无码另类久久久| 日韩精品久久无码中文字幕| 日韩精品久久久久久久电影蜜臀| 国内精品人妻无码久久久影院导航| 99久久免费国产精品特黄| 97精品国产97久久久久久免费| 久久久久波多野结衣高潮| 亚洲狠狠婷婷综合久久久久| 久久精品国产亚洲av日韩| 久久国产高清字幕中文| 99久久国产综合精品五月天喷水| 国产精品欧美亚洲韩国日本久久 | 久久人人添人人爽添人人片牛牛| 久久久黄色大片| 久久99国产综合精品免费| 91精品国产91热久久久久福利| 久久精品亚洲欧美日韩久久| 久久精品国产免费观看| 91精品国产色综合久久| 国产精品欧美久久久久天天影视| 亚洲日韩欧美一区久久久久我| 久久影院综合精品| 国产成人精品久久亚洲高清不卡 | 亚洲综合熟女久久久30p| 精品久久久久中文字幕日本| 嫩草影院久久国产精品| 午夜精品久久久久| 久久综合久久综合久久综合| 18禁黄久久久AAA片| 18岁日韩内射颜射午夜久久成人| 久久精品国产男包| 久久精品亚洲男人的天堂|