题解 | #合并表记录#

合并表记录

http://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201

#include <stdio.h>

int number,i,j,k,u;

struct {
            long long int index;
            long int value;
        }data[500],buff;

int main()
{
    scanf("%d\n",&number);
    for(i=0;i<number;i++)
    {
        scanf("%d %d\n",&data[i].index,&data[i].value);
    }
    for(j=0;j<number;j++)
    {
        for(k=j+1;k<number;k++)
        {
            if(data[j].index==data[k].index)
            {
                data[j].value+=data[k].value;
                for(u=k;u<number;u++)
                {
                    data[u]=data[u+1];
                }
                number--;
                j--;
            }
        }
    }
    for(i=0;i<number-1;i++)
    {
        for(j=i+1;j<number;j++)
        {
            if(data[j].index<data[i].index)
            {
                buff=data[i];
                data[i]=data[j];
                data[j]=buff;
            }
        }
    }
    for(i=0;i<number;i++)
    {
        printf("%d %d\n",data[i].index,data[i].value);
    }
    return 0;
}
全部评论
第29行应该是k--吧
点赞 回复
分享
发布于 2021-12-02 11:37

相关推荐

1 3 评论
分享
牛客网
牛客企业服务