import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		int A[] = new int[N];
		for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		}
		sc.close();
		
		boolean flag = true;
		int count = 0;
		while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		}
		
		for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		}
		System.out.println(A[N-1]);
		System.out.println(count);
		

	}
	

} import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		int A[] = new int[N];
		for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		}
		sc.close();
		
		boolean flag = true;
		int count = 0;
		while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		}
		
		for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		}
		System.out.println(A[N-1]);
		System.out.println(count);
		

	}
	

} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		int A[] = new int[N];
		for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		}
		sc.close();
		
		boolean flag = true;
		int count = 0;
		while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		}
		
		for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		}
		System.out.println(A[N-1]);
		System.out.println(count);
		

	} main {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		int A[] = new int[N];
		for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		}
		sc.close();
		
		boolean flag = true;
		int count = 0;
		while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		}
		
		for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		}
		System.out.println(A[N-1]);
		System.out.println(count);
		

	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = Integer.parseInt(sc.next()); N Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int A[] = new int[N]; A new int[N] N for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		} int i=0; int i=0; i 0 i<N i N i++ i++ i {
			A[i]=Integer.parseInt(sc.next());
		} {
			A[i]=Integer.parseInt(sc.next());
		} A[i]=Integer.parseInt(sc.next()) A[i] A i Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc sc.close() sc.close sc boolean flag = true; flag true int count = 0; count 0 while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		} flag {
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		} flag=false flag false for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			} int j=N-1; int j=N-1; j N-1 N 1 j>0 j 0 j-- j-- j {
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			} {
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			} if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				} A[j]<A[j-1] A[j] A j A[j-1] A j-1 j 1 {
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				} int temp=A[j]; temp A[j] A j A[j]=A[j-1] A[j] A j A[j-1] A j-1 j 1 A[j-1]=temp A[j-1] A j-1 j 1 temp count++ count flag=true flag true for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		} int i=0; int i=0; i 0 i<N-1 i N-1 N 1 i++ i++ i {
			System.out.print(A[i]+" ");
		} {
			System.out.print(A[i]+" ");
		} System.out.print(A[i]+" ") System.out.print System.out System System.out A[i]+" " A[i] A i " " System.out.println(A[N-1]) System.out.println System.out System System.out A[N-1] A N-1 N 1 System.out.println(count) System.out.println System.out System System.out count String[] args args public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		int A[] = new int[N];
		for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		}
		sc.close();
		
		boolean flag = true;
		int count = 0;
		while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		}
		
		for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		}
		System.out.println(A[N-1]);
		System.out.println(count);
		

	}
	

} public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		int A[] = new int[N];
		for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		}
		sc.close();
		
		boolean flag = true;
		int count = 0;
		while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		}
		
		for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		}
		System.out.println(A[N-1]);
		System.out.println(count);
		

	}
	

} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		int A[] = new int[N];
		for(int i=0;i<N;i++){
			A[i]=Integer.parseInt(sc.next());
		}
		sc.close();
		
		boolean flag = true;
		int count = 0;
		while(flag){
			flag=false;
			for(int j=N-1;j>0;j--){
				if(A[j]<A[j-1]){
					int temp=A[j];
					A[j]=A[j-1];
					A[j-1]=temp;
					count++;
					flag=true;
				}
			}
		}
		
		for(int i=0;i<N-1;i++){
			System.out.print(A[i]+" ");
		}
		System.out.println(A[N-1]);
		System.out.println(count);
		

	}
	

}