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

            worm

            為什么我的眼里飽含淚水?因為我程序沒寫完!
            隨筆 - 5, 文章 - 2, 評論 - 10, 引用 - 0
            數據加載中……

            poj 3126 Prim Path 第一道BFS

                  對于一個四位數,對于它某一位變化之后的素數,即“相鄰的素數”,進行廣度搜索,知道搜索到為止!
            挺簡單,看代碼應該可以看懂,下面是代碼
            9#include <iostream>
            10#include <queue>
            11#include <math.h>
            12using namespace std;
            13int a, b;
            14int p[9999= 0 };
            15int visited[9999= 0 };
            16bool isprime(int x) {
            17
            18    for (int i = 2; i <= sqrt((double) x); ++i) {
            19        if (x % i == 0)
            20            return false;
            21    }

            22    return true;
            23}

            24int BFS(int s, int r) {
            25    queue<int> q;
            26    q.push(s);
            27    p[s] = 0;
            28    visited[s] = 1;
            29    while (!q.empty()) {
            30        int temp = q.front();
            31        q.pop();
            32        for (int i = 0; i <= 9; i++{
            33            int y1 = (temp / 10* 10 + i;
            34            if (isprime(y1) && !visited[y1]) {
            35                q.push(y1);
            36                p[y1] = p[temp] + 1;
            37                visited[y1] = 1;
            38            }

            39            int y2 = temp % 10 + (temp / 100* 100 + i * 10;
            40            if (isprime(y2) && !visited[y2]) {
            41                q.push(y2);
            42                p[y2] = p[temp] + 1;
            43                visited[y2] = 1;
            44            }

            45            int y3 = temp % 100 + (temp / 1000* 1000 + 100 * i;
            46            if (isprime(y3) && !visited[y3]) {
            47                q.push(y3);
            48                p[y3] = p[temp] + 1;
            49                visited[y3] = 1;
            50            }

            51            if (i != 0{
            52                int y4 = temp % 1000 + i * 1000;
            53                if (isprime(y4) && !visited[y4]) {
            54                    q.push(y4);
            55                    p[y4] = p[temp] + 1;
            56                    visited[y4] = 1;
            57                }

            58            }

            59            if (visited[r])
            60                return p[r];
            61        }

            62
            63    }

            64    return 0;
            65}

            66int main() {
            67    int n;
            68    cin >> n;
            69    while (n--{
            70        memset(visited,0,sizeof(visited));
            71        memset(p,0,sizeof(p));
            72        cin >> a >> b;
            73        cout << BFS(a, b) << endl;
            74
            75    }

            76    return 0;
            77}

            78

            posted on 2009-03-08 10:36 WORM 閱讀(1334) 評論(1)  編輯 收藏 引用

            評論

            # re: poj 3126 Prim Path 第一道BFS  回復  更多評論   

            已閱 移除
            2009-03-08 20:26 | cppexplore
            久久精品人人做人人爽电影| 国产一久久香蕉国产线看观看 | 日韩va亚洲va欧美va久久| 久久国产成人午夜aⅴ影院| 中文字幕无码av激情不卡久久| 色婷婷综合久久久中文字幕| 99久久婷婷国产综合精品草原| 青青热久久国产久精品| 9久久9久久精品| 色妞色综合久久夜夜| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久受www免费人成_看片中文| 性欧美丰满熟妇XXXX性久久久 | 久久婷婷国产麻豆91天堂| 日韩久久无码免费毛片软件| 99久久综合狠狠综合久久止| 偷窥少妇久久久久久久久| 国产巨作麻豆欧美亚洲综合久久| 亚洲国产精品无码久久一区二区 | 久久久久99精品成人片牛牛影视| 色8久久人人97超碰香蕉987| 人妻丰满?V无码久久不卡| 久久精品视频网| 久久99精品久久久久婷婷| 久久久无码精品亚洲日韩蜜臀浪潮| 国产成人久久久精品二区三区 | 国产亚洲精品自在久久| 久久99久久99精品免视看动漫| 欧美国产成人久久精品| 国产精品美女久久久久av爽| 国产精品久久成人影院| 久久国产高潮流白浆免费观看| 日本久久久久亚洲中字幕| 亚洲精品无码久久久影院相关影片| 性做久久久久久久久浪潮| 伊人久久亚洲综合影院| 国内精品久久久久影院老司| 久久久噜噜噜久久中文字幕色伊伊 | 日本加勒比久久精品| 久久丝袜精品中文字幕| 亚洲第一永久AV网站久久精品男人的天堂AV |