//1_2_A?????????????????? 3_3
#include<stdio.h>

//spap??¢??°
void swap(int *a,int *b){
	int temp=*a;
	*a=*b;
	*b=temp;
	return ;
}

int printArray(int data[],int num){
	int i;
	for(i=0;i<num;i++){
		if(i!=0)printf(" ");
		printf("%d",data[i]);
	}
	printf("\n");
	return 0;
}

int main(){
	int i,j,k,A[10]={0},count=0;
	int n;
	int flag=1;
	
	scanf("%d",&n);
	//??\???
	for(i=0;i<n;i++){
		scanf("%d",&A[i]);
	}
	
	//?????????
	for(j=0;flag;j++){
		flag=0;
		for(i=n-1;i>=j+1;i--){
			if(A[i]<A[i-1]){			//?????§????´?????¬????????´????????°?????????¨???	
				swap(&A[i],&A[i-1]);	//??????
				count++;
				flag=1;
			}
			//printArray(A,n);
		}
	}
	
	printArray(A,n);
	printf("%d\n",count);
	
	return 0;
}