题解 | #合并表记录#
合并表记录
https://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201
#include <stdio.h> int main() { int index; int val; int num[501][2]={0}; int num2[201][2]={0}; int n; int count; int m; scanf("%d",&n); int i,j=0; for(i=0;i<(2*n);i++) { scanf("%d",&num[i/2][i%2]); } for(i=0;i<n;i++) { for(j=i+1;j<n;j++) { if(num[i][0]==num[j][0]) { num[i][1]=num[i][1]+num[j][1]; num[j][1]=0; num[j][0]=0; } } } for(i=0;i<n;i++) { if((num[i][0]==0)&&(num[i][1]!=0)) { printf("%d %d\n",num[i][0],num[i][1]); num[i][0]=0; num[i][1]=0; } } for(i=0;i<n;i++) { m=11111111; for(j=0;j<n;j++) { if(m>num[j][0]&&(num[j][0]!=0)) { m=num[j][0]; } } if(m!=0) { for(j=0;j<n;j++) { if(m==num[j][0]) { printf("%d %d\n",num[j][0],num[j][1]); num[j][0]=0; num[j][1]=0; } } } } }