1 条题解

  • 0
    @ 2025-4-12 21:33:54

    C :

    #include<stdio.h>
    #include<stdlib.h>
    int a[10]={0};
    int n;
    void outp(int a[]);
    
    int search(int i){
        int j;
        for(j=1;j<=n;j++){
            a[i]=j;
            if(i==n) outp(a);
            else search(i+1);
            }
    }
    
    void outp(int a[]){
         int i;
      for(i=1;i<=n;i++){
             printf("%d",a[i]);
      }
         putchar('\n');
    }
    
    int main(){
    
        scanf("%d",&n);
        search(1);
    
        return 0;
    }
    

    C++ :

    #include<iostream>
    #include<cstdio>
    #include<cstdlib>
    #include<cstring>
    #include<cmath> 
    using namespace std;
    int a[20],sum=0;
    int i,m,n,j,k;
    int pl (int s)
    {
     int i,j;
     for (i=1;i<=n;++i)
      {
      	a[s]=i;
      	if (s==n)
    	 {
    	  sum+=1;if (sum>1) cout<<endl;
      	  for (j=1;j<=n;++j)
      	   cout<<a[j]; 
    	 }
      	else pl(s+1);
      }
    }
    int main ()
    {
     cin>>n;
     pl(1);
     return 0;
    }
    
    • 1

    信息

    ID
    776
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者