Problem Z 素數環問題(第五講)

2021-09-04 15:14:23 字數 420 閱讀 6838

題目描述

把從1到n的正整數排成乙個環,使環中任何相鄰的兩個數之和都為素數,從1開始在一行輸出乙個符合條件的數環,按字典序輸出所有符合條件的數環。n不大於9。

輸入一行輸入乙個正整數n,遇到檔案末尾結束。

輸出從1開始在每行輸出乙個符合條件的數環,按字典序輸出所有符合條件的數環,數和數之間不加空格。

樣例輸入

4樣例輸出

1234

1432

#includeusing namespace std;

int n,a[18]=,visit[18]=,isp[33];

void solve(int n)

}else

}}int isprime(int i)

int main()

素數環問題

問題描述 用自然數1到20構成乙個素數環,環中的每個元素與其相鄰元素的和都構成素數。請程式設計實現並輸出這個環 這裡採用了遞迴策略,可以輸出所有情況,不過存在重複輸出問題,重複輸出數為n,環是沒有次序的 現在沒有想到好的解決方法。若自然數個數確定為20 則構環的數目相當大,程式執行時間也高得驚人。測...

素數環問題

素數環 時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 有乙個整數n,把從1到n的數字無重複的排列成環,且使每相鄰兩個數 包括首尾 的和都為素數,稱為素數環。為了簡便起見,我們規定每個素數環都從1開始。例如,下圖就是6的乙個素數環。輸入 有多組測試資料,每組輸入乙個n 0 n...

素數環問題

把從1到20這20個數擺成乙個環,要求相鄰的兩個數的和是乙個素數。c include include include using namespace std 列印結果 void printsolution const vector v cout bool check1 const vector v,...