Problem P: 开个餐馆算算账

Problem P: 开个餐馆算算账

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 1761  Solved: 931
[Submit][Status][Web Board]

Description

小明创业了!他开了一家餐馆,每天客人还挺多的。每天下班后,他都要算算今天总共收入多少钱,但是手工算太麻烦了,所以他来向你求助了。

Input

第1行N>0,表示餐馆提供N个菜品。

之后N行,每行包括2部分:菜名(不含空白符)及每份菜品的价格。

接着是M>0,表示今天接待的客人数。

每个客人的输入份三部分,第1行是客人的姓名(不含空白符),第2行是客人点的菜品的种类数K,之后K行是客人点的菜品名及份数。

Output

第一行输出Guest        Price。

之后按照客人姓名从小到大的顺序(没有重名的顾客),依次输出每个客人消费了多少钱,消费额保留2位小数。

输出时,姓名左对齐,宽度为所有客人姓名的最大长度加1。

Sample Input

10

Yu-Shiang-Shredded-Pork 20

sweet-sour-Shredded-potato 15

Pie 0.50

Steamed-Rice 1.50

Tomato-and-Egg-Soup 17

Spareribs-with-brown-sauce 55

Sauteed-Sliced-Lamb-with-Scallion 60

Stir-fried-bean-sprouts 14

Moo-Shu-Pork 18

Deep-Fried-Dough-Sticks 2.50

3

Zhangsan

4

Yu-Shiang-Shredded-Pork 1

sweet-sour-Shredded-potato 1

Pie 3

Steamed-Rice 1

LiSi

2

Moo-Shu-Pork 1

Deep-Fried-Dough-Sticks 4

WangWu

3

Tomato-and-Egg-Soup 1

Spareribs-with-brown-sauce 1

Sauteed-Sliced-Lamb-with-Scallion 1

Sample Output

Guest Price

LiSi 28.00

WangWu 132.00

Zhangsan 38.00

HINT

#include <iostream>
#include <iomanip>
#include <map>
//#include <string>
using namespace std;
int main()
{
    int len=0; //名字长度
    int N;cin>>N;
    map<string, double> post;//用于存菜单
    for(int i=0; i<N; i++)//输入相关菜品信息
    {
        string name; double price;
        cin>>name>>price;
        post[name]=price;//两种存储方法
        //post.insert(make_pair(name, price));
    }
    int M;cin>>M;
    map<string, double> person;// 用于存人名和消费
    for(int i=0; i<M; i++)
    {
        string name; int K;
        cin>>name>>K;//输入人名和消费信息

        if(name.size()>len)//求出最大名字长度
        len=name.size();

        double sum=0;
        for(int j=0; j<K; j++)
        {
            string name_; int n;
            cin>>name_>>n;
            sum+=post[name_]*n;
        }
        person[name]=sum;//两种存储方法
        //person.insert(make_pair(name, sum));
    }

    cout<<"Guest        Price"<<endl;
    map<string, double>::iterator p;
    for(p=person.begin(); p!=person.end(); p++)
    cout<<setiosflags(ios::left)<<setw(10)<<p->first<<setprecision(2)<<fixed<<" "<<p->second<<endl;

}

  

原文地址:https://www.cnblogs.com/Jie-Fei/p/9157557.html

时间: 2024-10-19 09:55:17

Problem P: 开个餐馆算算账的相关文章

Problem A: 开宝箱 (最沙雕的做法)(未用指针做)

Description 急先锋是一个商人,有一天找到了一个宝箱,宝箱需要正确的密码才能打开.同时他发现宝箱上有一个数字,和一份密码表.密码表上有n个密码,只有一个密码是正确的. 急先锋所在的岛上有m个地点,每个地点有两个神秘的数字.他通过交易得到每个地点上拥有的信息,也知道这个宝箱上的数字是一个地点的标号x.急先锋需要先到x号地点,x号地点上的第一个数字就是他要去的最终地点的标号,最终的地点上的第二个数字就是密码在密码表上的序号.急先锋想要知道打开这个宝箱的密码,聪明的你能不能直接告诉他呢? I

小说脑洞:《我在伊拉克开餐馆的日子》

简介:一个上校军衔的特种兵,在一次领导作战时,指挥失误,导致作战失败,而后引咎辞职,离开了祖国,到伊拉克开一家餐馆. 风格:黑暗流. 篇幅:中短篇. 开篇:他唯一执行任务失败的一次,也就是导致他引咎辞职的任务.他领导一队特种兵,一共二十人,执行反恐任务,在行动关键处,情报出错,直接导致十七人伤亡,只有四个人逃了出来.他一时无法接受这种结果,在后来汇报任务时,揽下所有责任,辞了职,不敢再面对旧时战友,离开了祖国. 中篇:故事的剧情,可以借助西方的七宗罪,傲慢.嫉妒.愤怒.懒惰.贪婪.淫欲.暴食.来

新手如何写好开发信,加大成交率?--附上老外的建议和成交案例

本文章网址:http://bbs.fobshanghai.com/viewthread.php?tid=2664878&extra=&page=1 很多sales朋友常常抱怨,开发信效果很差,100封里面好几十封退信,剩下的就是石沉大海,难得有一个老外回一句“No, thanks.”就可以让你激动半天.      其实大家有没有想过,这样的做法会严重挫伤自己的积极性.可以试想一下,当你一天坐在电脑面前12个小时,从google和各种黄页搜索到客人信息,一封一封开发信发出去,晚上满脸疲惫的回

太极拳技击秘诀&#183;松腰开跨的重要性

百分之九十九习太极拳者(包括晨运的公公婆婆在内),恐怕仍不知道太极拳是何物,何况一般人了.而最受误解的,是他们都以为太极是柔拳,总之甚么都柔,便是太极,他们以为这样柔,就可以克刚,真是太天真了. 太极分阴阳,太极拳当然包含了刚和柔:轻和重:虚和实:正和斜等等的阴阳对待的概念,是一个阴阳同体的格局. 不是跟你开玩笑的,太极一拳真的可以打死人的.太极的刚,属於至刚,所以太极高手没必要打人,推人便算了.近代太极重要人物杨露禅,教了吴全佑功夫,是为吴家太极之始祖.後来杨露禅告老回乡,吴全佑尾随不舍.杨便

Problem J. Journey with Pigs

Problem J. Journey with Pigshttp://codeforces.com/gym/241680/problem/J考察排序不等式算出来单位重量在每个村庄的收益,然后生序排列猪的重量也生序排列此时价值最大 1 #include<iostream> 2 #include<cstdio> 3 #include<queue> 4 #include<algorithm> 5 #include<cmath> 6 #include&l

luogu_P1092 虫食算

https://www.luogu.org/problem/P1092 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母.来看一个简单的例子: 43#9865#045 + 8468#6633 44445509678 其中#号代表被虫子啃掉的数字.根据算式,我们很容易判断:第一行的两个数字分别是55和33,第二行的数字是55. 现在,我们对问题做两个限制: 首先,我们只考虑加法的虫食算.这里的加法是NN进制加法,算式中三个数都有NN位,允许有前导的00.

《经济学通识》二、管制的愿望与结果

现代经济学最为核心的主题是稀缺,也就是说资源是有限的,可是我们每个人的欲望确是无穷的,正因为有限的资源无法满足人类无穷的欲望,所以我们才需要考虑如何配置资源,获得更高的效率,从而呢最大限度的满足人类的欲望.所有的出发点都是为了这个目的,所以才有了我们激烈的竞争,不断追求自己利益最大化.政府呢也才需要制定一定的规章制度,维护市场的秩序.这是最基本的一点,在以后的讨论中我们都不能忘记. 本章名称"东西不够"就是明确的表达了稀缺.所谓的东西不够,不仅仅是绝对意义数量上的多少,而是指我们社会中

罗振宇《时间的朋友2018》跨年演讲全文

2018年12月31日20:30,深圳“春茧”体育馆,罗振宇2018“时间的朋友”跨年演讲如约而至.罗胖曾发下大愿望:跨年演讲要连办二十年.今年,是第四场,也是倒数第十七场.在历时四个小时的演讲中,罗胖通过对过去一整年的回顾和未来的展望,连发“扎心五问”,最终揭示出——比起普通人无法把控的大趋势,真正能给所有人带来机会,从细微处引发大变化的,恰恰是我们身边的各种 “小趋势”. 以下是未删减演讲全文,与你分享. 第一部分:开篇  ① 我是从9月22日正式开始准备今年的跨年演讲.从那一天开始,我身边

力量源泉

信念决定你一生成就.人与人的差别仅在于思考问题的方式不同,成功源于人思考问题的方式,跟源于态度和信念.一切的思考.行动都受控于某一个力量,那就是信念. 如何选择正确的信念: 1.你必须确信信念的力量. 2.系统性的模仿成功者的信念,不要向平庸者寻求答案,不要简单地去认同多数人的答案,世界上顶尖的资讯就在那些顶尖人物的脑袋里,只有成功者的信念系统才能帮助我快速的成功. 3.把成功者的信念写下来,贴在最显眼的墙上,写在笔记本的首页,利用视觉的潜意识不断的将它强化,直到成为生命中的一部分为止.决定人生