看下下面代码?当输入 4 1 2 2 4 看结果。next_permutation得到正确的结果,而prev_permutation得不到。为什么??
#include
#include
using namespace std;
int s[15],t[15];int i,l;
void print(int *w)
{
for(int i=0;iw[i+1])return 0;
return 1;
}
int cmp(int a,int b){return a>b;}
int main()
{
while(cin>>l)
{
for(i=0;i>t;
sort(t,t+l);
for(i=0;iusing namespace std;int w[20];int n,i,j,k,mi;int cmp(int a,int b){return a>b;}void pre(){for(k=0;;k++) {printf("%3d : ",k+1);for(i=0;i0;j--)if(w[j]<w[j-1])break;if(j==0)return;... |