hdu1016 素數環剪枝dfs

2021-07-08 19:00:06 字數 1007 閱讀 9217

題意:n<20範圍,搜乙個全排列,滿足素數環,相鄰兩個數字和為素數,最後一位和第一位之和也是素數。

剪枝:每一位都先先判斷再搜尋。

#include 

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define rep(i,a,n) for (int i=a;i#define per(i,a,n) for (int i=n-1;i>=a;i--)

#define pb push_back

#define mp make_pair

#define all(x) (x).begin(),(x).end()

#define fi first

#define se second

#define eps 1e-8

#define m_pi 3.141592653589793

typedef

long

long ll;

const ll mod=1000000007;

const

int inf=99999999;

ll powmod(ll a,ll b) return res;}

using

namespace

std;

int n,a[30],v[30],t,prime[41]=;

void dfs(int cur)

return;

}else}}

}}int main()

}

HDU1016 簡單遞迴 DFS

題意 乙個環,相鄰相加是素數。思路 直接深搜就好了。output limit exceed 了好幾發。因為那個while裡面的scanf前面的 後來搜了output limit exceed的常見錯誤,還有輸入輸出,所以主要看下輸入輸出那邊有沒有寫錯吧,還有寫的時候也要及其避免出現錯誤。includ...

hdu1016 DFS 素數判斷

總是不好好審題。總結一下自己不看題容易犯的錯 1.漏掉某個重要條件。如此題的必須為1開頭,之前還有一道迷宮題也是。2.列印格式問題 3.可能是多個樣例輸入 在這點上栽了很多次了。4.不同答案的英文格式問題。此題是最簡單的dfs 素數判斷,素數直接照搬之前學習的乙個單個素數判斷方法,非常強悍 hdu1...

航電1016題 素數環

具體題目參照航電1016 如下 include using namespace std int n int ans 17 int hash 17 bool isprime 32 int prime error 後面未加 void initprime for int i 0 i 11 i void c...