#include <stdio.h>
int cmp(int x, int y)
{
return x > y;
}
void swap(int *x, int *y)
{
int tmp = *x;
*x = *y;
*y = tmp;
}
int main(void)
{
int a[] = {3, 1, 4, 1, 5, 9, 2, 6, 5};
size_t n = sizeof a / sizeof a[0];
int kae;
int count = 0;
for (size_t i = 0; i < n - 1; ++i) {
for (size_t j = 0; j < n - 1 - i; ++j) {
if (cmp( a[j], a[j+1])) {
swap(&a[j],&a[j+1]);
kae=1;
count++;
}
}
if (kae==0)
break;
}
for (size_t i = 0; i < n; ++i) {
}
printf("count = %d\n", count
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgY21wKGludCB4LCBpbnQgeSkKewpyZXR1cm4geCA+IHk7Cn0KCnZvaWQgc3dhcChpbnQgKngsIGludCAqeSkKewppbnQgdG1wID0gKng7Cip4ID0gKnk7Cip5ID0gdG1wOwp9CgppbnQgbWFpbih2b2lkKQp7CmludCBhW10gPSB7MywgMSwgNCwgMSwgNSwgOSwgMiwgNiwgNX07CnNpemVfdCBuID0gc2l6ZW9mIGEgLyBzaXplb2YgYVswXTsKaW50IGthZTsKaW50IGNvdW50ID0gMDsKCmZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbiAtIDE7ICsraSkgewoJZm9yIChzaXplX3QgaiA9IDA7IGogPCBuIC0gMSAtIGk7ICsraikgewoJCWlmIChjbXAoIGFbal0sIGFbaisxXSkpIHsKCQkJc3dhcCgmYVtqXSwmYVtqKzFdKTsKCQkJa2FlPTE7CgkJCWNvdW50Kys7CgoJCQkKCQl9CgkJCgl9CglpZiAoa2FlPT0wKQoJYnJlYWs7Cn0KCgpmb3IgKHNpemVfdCBpID0gMDsgaSA8IG47ICsraSkgewoJcHJpbnRmKCIlZCAiLCBhW2ldKTsKCQp9CnByaW50ZigiXG4iKTsKcHJpbnRmKCJjb3VudCA9ICVkXG4iLCBjb3VudCk7CgpyZXR1cm4gMDsKfQo=