题解 | #合并表记录#
合并表记录
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]);
}
}