代码求调
  • 板块灌水区
  • 楼主封禁用户
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/6/18 21:46
  • 上次更新2024/6/19 13:12:34
查看原帖
代码求调
1219110
封禁用户楼主2024/6/18 21:46

素数环

#include <iostream>
#include <cmath>
using namespace std;
int n, ans;
int a[20], flag[20];
bool prime(int num){
    if(num<=1){
        return false;
    }
    for(int i=2;i<=sqrt(num);i++){
        if(num%i==0){
            return false;
        }
    }
    return true;
}
void dfs(int x){
    //cout << "a[" << x << "]=" << a[x] << endl;
    if(x==n+2){
        ans++;
        return;
    }
    for(int i=2;i<=n;i++){
        a[x]=i;
        a[n+1]=1;
        if(prime(a[x]+a[x-1])!=true||(flag[i]==1&&x<=n)){                   //problem over here(it sucks)
            continue;
        }
        flag[i]=1;
        dfs(x+1);
        flag[i]=0;
    }
}
int main() {
    cin >> n;
    a[1]=1;
    flag[1]=0;
    dfs(2);
    cout << ans << endl;
    return 0;
}

/*
#include <iostream>
using namespace std;
int main(){
    int n, a[15]={0, 1, 1, 0, 2, 0, 2, 0, 4, 0, 96}; cin >> n;
    cout << a[n] << endl;
    return 0;
}
*/

玄关, 调就行了

别在意这条帖子

2024/6/18 21:46
加载中...