#include <stdio.h> 
#include <stdlib.h> 
#define SWAP(x,y) {int t; t = x; x = y; y = t;} 

void insertIntoHeap(int); 
int num=0;
int number[999];
int main(void) {     
  int i;

  printf("How many numbers:");
 
  scanf("%d",&num);
  printf("%d\n", num);  

  for (i = 0; i < 999; i++)
    number[i] = -1; 

  printf("Enter the numbers:");

  for(i = 1; i <= num; i++) { 
    scanf("%d",&number[i]);
  }
    
  for(i = 1; i <= num; i++) 
    printf("%d ", number[i]);

  printf("\n");

  for(i = 1; i <= num; i++)
    insertIntoHeap(i);

  printf("result："); 
  for(i = 1; i <= num; i++) { 
    printf("%d ", number[i]); 
  } 
}

void insertIntoHeap(int index) { 
   int newNumber = number[index];
   int i;

   for(i = index; 1; ) {
     if (i == 1)
       break;

     if(newNumber <= number[i/2]) break;
     number[i] = number[i/2];
     i /= 2;
   }
   number[i] = newNumber;
}