void merge(int l,int r){
if(l==r)return 0;
int mid=(l+r)/2;
merge(l,mid);
merge(mid+1,r);
int i=l,j=mid+1,p=l;
while(i<=mid&&j<=r){
if(a[i]>a[j])temp[++p]=a[++i];
else temp[++p]=a[++j];
}
while(i<=mid)temp[++p]=a[++i];
while(j<=r)temp[++p]=a[++j];
for(int i=l;i<=r;i++)a[i]=temp[i];
}