题解 | #合并表记录#
合并表记录
https://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201
#include <stdio.h> #include <malloc.h> int main() { int length = 0; scanf("%d\n",&length); int arr[length][2]; for(int i = 0;i<length;i++){ scanf("%d %d",&arr[i][0],&arr[i][1]); } for(int i = 0;i<length;i++) { for(int j = i+1;j<length;j++){ if(arr[i][0]==arr[j][0]){ length--; arr[i][1] = arr[i][1] + arr[j][1]; for(int k = j;k<length;k++){ arr[k][1] = arr[k+1][1]; arr[k][0] = arr[k+1][0]; } j--; } } } for(int i=0;i<length;i++){ for(int j = i+1;j<length;j++) { if(arr[i][0]>arr[j][0]){ int a = arr[i][0]; arr[i][0] = arr[j][0]; arr[j][0] = a; int b =arr[i][1]; arr[i][1] = arr[j][1]; arr[j][1] = b; } } } for(int i =0;i<length;i++){ printf("%d %d\n",arr[i][0],arr[i][1]); } }