⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1178.c

📁 平时acm训练时ac的源代码
💻 C
字号:
#include <stdio.h>

int a[10000]={0};
int b[10000]={0};
int q,l,r,j,i,x,n;

void p(int l,int r)
{
     j=r;i=l;x=a[i];
     while (i!=j) 
	 {
		 while (a[j]>x&&j>i) j--;
           if (i<j) 
		   {
				q=a[i];a[i]=a[j];a[j]=q;
                q=b[i];b[i]=b[j];b[j]=q;
				i++;
		   }
         while (a[i]<x&&j>i) i++;
           if (i<j)
		   {
				q=a[j];a[j]=a[i];a[i]=q;
                q=b[i];b[i]=b[j];b[j]=q;
				j--;
		   }
     }
	 x=a[i];
     if(l<i-1) p(l,i-1);
     if(i+1<r) p(i+1,r);
}

main()
{
	 scanf("%d",&n);
     for(i=1;i<=n;i++)	scanf("%d",&a[i]);
	 for(i=1;i<=n;i++)	b[i]=i;
     p(1,n);
     for(i=1;i<=n/2;i++)  printf("%d %d\n",b[2*i-1],b[2*i]);
	 getch();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -