1 条题解

  • 0
    @ 2025-2-16 14:47:34
    #include<bits/stdc++.h>  
    using namespace std;
    int n;
    bool sushu(int a){
    	if(a==0||a==1) return 0;
    	for(int i=2;i<=sqrt(a);i++) if(a%i==0) return 0;
    	return 1;
    }
    void dfs(int l,int k){//dfs搜索
    	if(l>n){
    		cout<<k<<endl;
    		return;
    	}
    	int t=k*10+1;
    	if(sushu(t)) dfs(l+1,t);
    	t+=2;
    	if(sushu(t)) dfs(l+1,t);
    	t+=4;
    	if(sushu(t)) dfs(l+1,t);
    	t+=2;
    	if(sushu(t)) dfs(l+1,t);
    	return;
    }
    int main(){
        cin>>n;   
        dfs(2,2);
        dfs(2,3);
        dfs(2,5);
        dfs(2,7);
        return 0;   
    }
    

    [USACO1.5] 特殊的质数肋骨 Superprime Rib

    信息

    ID
    571
    时间
    1000ms
    内存
    125MiB
    难度
    10
    标签
    递交数
    1
    已通过
    1
    上传者