#include<iostream>
using namespace std;
int main( )
{
const int size = 10 ;
int arr[ size] = { 18 ,2 ,14 ,9 ,22 ,1 ,7 ,- 4 ,16 ,0 } ;
int i = 0 ,j = 0 ;
for ( i = 1 ; i < size; i++ )
{
std:: cout << "\n i =" << i << ", arr[i]: " << arr[ i] << " " ;
for ( j = i - 1 ; j >= 0 && arr[ j] > arr[ i] ; j-- )
{
swap( arr[ j] , arr[ j+ 1 ] ) ;
std:: cout << arr[ i] << " " ;
}
}
std:: cout << "\n " ;
cout << endl;
return 0 ;
}
I2luY2x1ZGU8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKIAogCmludCBtYWluKCkKewogICAgY29uc3QgaW50IHNpemUgPSAxMDsKICAgIAogICAgaW50IGFycltzaXplXSA9IHsgMTgsMiwxNCw5LDIyLDEsNywtNCwxNiwwIH07CiAgICBpbnQgaSA9IDAsaiA9IDA7CiAgICBmb3IgKGkgPSAxOyBpIDwgc2l6ZTsgaSsrKQogICAgewogICAgICAgIHN0ZDo6Y291dCA8PCAiXG5pID0iIDw8IGkgPDwgIiwgYXJyW2ldOiAiIDw8IGFycltpXSA8PCAiICI7CiAgICAgICAgZm9yIChqID0gaSAtIDE7IGogPj0gMCAmJiBhcnJbal0gPmFycltpXTtqLS0pCiAgICAgICAgewogICAgICAgICAgICBzd2FwKGFycltqXSwgYXJyW2orMV0pOwogICAgICAgICAgICBzdGQ6OmNvdXQgPDwgYXJyW2ldIDw8ICIgIjsKICAgICAgICB9CiAgICB9CiBzdGQ6OmNvdXQgPDwgIlxuIjsKICAgCiAKICAgIGNvdXQgPDwgZW5kbDsKIAogICAgcmV0dXJuIDA7Cn0=
stdout
i =1, arr[i]: 2 18
i =2, arr[i]: 14 18
i =3, arr[i]: 9 18
i =4, arr[i]: 22
i =5, arr[i]: 1 22
i =6, arr[i]: 7 22
i =7, arr[i]: -4 22
i =8, arr[i]: 16 22
i =9, arr[i]: 0 22