题解 | #键值对类型的题#

合并表记录

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

键值对类型的题,利用map键不重复的性质

首先考虑到键不会重复,其次map键具有自动排序的功能,最后可以用迭代器iterator来遍历就好了

#include <iostream>
#include <map>

using namespace std;

int main()
{
    map<int ,int>m;
    int n;
    cin>>n;
    int index,value;
    for(int i=0;i<n;i++)
    {
        cin>>index>>value;
        
        if(m.find(index)!=m.end())//找到某个键对应的位置,与上次已存在的值进行相加
        {
            m[index]+=value;
        }
        else
        {
            m[index]=value;//没有找到某个键对应的位置,直接对相应位置进行赋值就好了,与vector类似
        }
        
    }
    map<int, int>::iterator it;
    for(it=m.begin();it!=m.end();it++)//迭代器遍历就好了
    {
        cout<<it->first<<' '<<it->second<<endl;
    }
    
}
全部评论

相关推荐

Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
06-11 17:39
门头沟学院 Java
小呆呆的大鼻涕:卧槽,用户彻底怒了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 12:23
转人工😡
门口唉提是地铁杀:五次握手了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务