素數最短距離問題

2021-06-09 22:59:04 字數 741 閱讀 8274

素數距離問題

時間限制:3000 ms | 記憶體限制:65535 kb

難度:2

描述現在給出你一些數,要求你寫出乙個程式,輸出這些整數相鄰最近的素數,並輸出其相距長度。

如果左右有等距離長度素數,則輸出左側的值及相應距離。

如果輸入的整數本身就是素數,則輸出該素數本身,距離輸出0

輸入第一行給出測試資料組數n(0

//這裡效率上不高,我主要是練習使用篩法求素數!

**如下:

#include

#include //用到memset

//#include

//#include

using namespace std;

#define max_size 5000000//定義這麼大是為了保證與m最近的素數可能是超過100萬

bool isprime[max_size];

void createprimetable()

}//cout << "time:" << clock()-start << "ms" << endl;

}int  main()

}for (b = s+1; ; b++)

}if (dis1 <= dis2)

cout << a << " " << dis1 << endl;

else

cout << b << " " << dis2 << endl;}}

return 0;

}

1407 最短距離

兩個點 a b 均在做勻速直線運動。給出 t 0時刻 a b 的座標,以及 a b 的速度,計算t 0時兩個點的距離的最小值。輸入的第一行包含乙個整數 t 1 t 200 表示一共有 t 組測試資料。對於每組測試資料,第一行包含4個整數 x a y a v ax v ay 103 x a y a v...

編輯最短距離

給定兩個字串s和t,對於t我們允許三種操作 1 在任意位置新增任意字元 2 刪除存在的任意字元 3 修改任意字元 問最少操作多少次可以把字串t變成s?例如 s abcf t dbfg 那麼我們可以 1 把d改為a 2 刪掉g 3 加入c 所以答案是3。1 把t中字元全刪了,再新增s的全部字元,操作次...

解決農場最短距離問題

一 題目描述 farmer john 被選為他們鎮的鎮長!他其中乙個競選承諾就是在鎮上建立起網際網路,並連線到所有的農場。當然,他需要你的幫助。fj 已經給他的農場安排了一條高速的網路線路,他想把這條線路共享給其他農場。為了用最小的消費,他想鋪設最短的光纖去連線所有的農場。你將得到乙份各農場之間連線...