哪里错了,求指点

https://hydro.ac/p/luogu-P1706


#include<bits/stdc++.h>
using namespace std;
int a[9];
int n,j=1;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++)
	 a[i]=n-i,j*=i;

	for(int i=1;i<=j;i++){
        next_permutation(a+1,a+n+1);
	    for(int k=1;k<=n;k++)
	         cout<<"    "<<a[k];
	   cout<<endl;
	 }
	 return 0;
}


今天是我注册账号满一个月(喜

1 comments

  • @ 2025-12-6 15:36:42

    输出结果全部差1,结果a[k]+1就好了

    
    
    #include<bits/stdc++.h>
    using namespace std;
    int a[9];
    int n,j=1;
    int main(){
    	cin>>n;
    	for(int i=1;i<=n;i++)
    	 a[i]=n-i,j*=i;
    
    	for(int i=1;i<=j;i++){
            next_permutation(a+1,a+n+1);
    	    for(int k=1;k<=n;k++)
    	         cout<<"    "<<a[k]+1;
    	   cout<<endl;
    	 }
    	 return 0;
    }
    
    
    
  • 1