码迷,mamicode.com
首页 > 其他好文 > 详细

HDOJ.1263

时间:2019-02-14 22:14:11      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:end   bool   ++i   ring   false   names   make   sign   class   

一道非常简单的map题吧

因为没做过hd的题所以输出格式爆炸



#include<bits/stdc++.h>

using namespace std;


int n;
int m;
map<pair<string,string>,int > mm;
int main()
{
    cin >> n;
    map<pair<string,string>,int >::iterator it;
    string ts1,ts2;
    int ti1;
    bool sign = false;
    while(n--)
    {
        
        cin >> m;
        mm.clear();
        for(int i=0;i<m;++i)
        {
            cin >> ts1 >> ts2 >> ti1;
            mm[make_pair(ts2,ts1)] += ti1;
        }
        ts1 = mm.begin()->first.first;
        cout <<ts1 ;
        for(it = mm.begin();it!=mm.end();++it)
        {
            if(it->first.first==ts1)
            {
            
                cout <<endl<<"   |----"<<it->first.second <<"("<<it->second << ")";
            }
            else
            {
                ts1 =  it->first.first;
                cout <<endl<< ts1;
                cout <<endl<<"   |----"<<it->first.second <<"("<<it->second << ")";
            }
        }
        if(n)   cout << endl<<endl;
        else cout <<endl;
    }

    return 0;
 } 
  • 两个数据之间居然要隔一行
  • map用下标查询还可以+=
  • 这题也可以用map 套map

HDOJ.1263

标签:end   bool   ++i   ring   false   names   make   sign   class   

原文地址:https://www.cnblogs.com/xxrlz/p/10380874.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!