#include #include int c(int*a,int*b){return*a-*b;} // これを long でも通用するように int main(void){ int N; int a,b; long int C[1000]; long int count = 0; scanf("%d",&N); for(int i = 0; i < N; i++){ scanf("%d %d",&a,&b); C[i] = a + b * 4; } qsort(C,N,8,c); // (配列、データ数、1つのメモリ、並び順) // check ok for(int k = 0; k < N; k++){ printf("%d ",C[k]); } printf("\n"); for(int j = 0; j < N-1; j++){ if( (C[j+1] - C[j]) % 2 != 0 ){ printf("-1\n"); return 0; }else{ count += (C[j+1] - C[j]) / 2 * (j+1); } } printf("%ld\n",count); return 0; }