合并表记录
题目描述
数据表记录包含表索引和数值,请对表索引相同的记录进行合并,即将相同索引的数值求和,按照索引升序输出。索引范围 0~1000。 输入:第一行 n,后面 n 行,每行两个整数 index val 输出:按索引从小到大,索引和总和
示例: 输入 4 0 1 0 2 1 3 2 4 输出 0 3 1 3 2 4
#include <stdio.h> int main(void) { int arr[1001] = {0}; int n; scanf("%d", &n); for(int i = 0; i < n; i++) { int idx, val; scanf("%d%d", &idx, &val); arr[idx] += val; } for(int i = 0; i <= 1000; i++) { if(arr[i] != 0) { printf("%d %d\n", i, arr[i]); } } return 0; }