7-45 航空公司VIP客户查询 (25 分)(思路+详解+map用法解释+超时解决)兄弟们来呀冲压呀呀呀呀

一:题目

不少航空公司都会提供优惠的会员服务,当某顾客飞行里程累积达到一定数量后,可以使用里程积分直接兑换奖励机票或奖励升舱等服务。现给定某航空公司全体会员的飞行记录,要求实现根据身份证号码快速查询会员里程积分的功能。

输入格式:
输入首先给出两个正整数N(≤10
5
)和K(≤500)。其中K是最低里程,即为照顾乘坐短程航班的会员,航空公司还会将航程低于K公里的航班也按K公里累积。随后N行,每行给出一条飞行记录。飞行记录的输入格式为:18位身份证号码(空格)飞行里程。其中身份证号码由17位数字加最后一位校验码组成,校验码的取值范围为0~9和x共11个符号;飞行里程单位为公里,是(0, 15 000]区间内的整数。然后给出一个正整数M(≤10
5
),随后给出M行查询人的身份证号码。

输出格式:
对每个查询人,给出其当前的里程累积值。如果该人不是会员,则输出No Info。每个查询结果占一行。

输入样例:

4 500
330106199010080419 499
110108198403100012 15000
120104195510156021 800
330106199010080419 1
4
120104195510156021
110108198403100012
330106199010080419
33010619901008041x

输出样例:

800
15000
1000
No Info

二:思路

用到了map容器一对一映射的特性,因为map容器自带去重功能,所以我们在处理 相同的身份证号码时,用的是累加功能,这样就避免了直接覆盖,需要知道的是,如果未赋初值(即键值),键值默认为0 (map<关键值,键值>m);

还有的是这个输入字符串,我先用的是string 但不可以,我后来改为了 字符数组

三:知识速递(不懂map的兄弟们可以学一下啊)

map的用法

四:上码(来干了这杯代码,我们一醉方休)

/**思路:用map容器进行存储   */
#include<bits/stdc++.h>
using namespace std;int main(){int N,K;map<string,int>m;map<string,int>::iterator t;scanf("%d%d",&N,&K);for( int i = 0; i < N; i++ ){char a[20];int mileage;//	cin >> str >> mileage;scanf("%s%d",a,&mileage);//字符串可以不用带&if( mileage < K)mileage = K;m[a] += mileage; //m[str] 未赋初始值时候 其默认为 0 ; } int M;cin >> M;for( int i = 0; i < M; i++ ){char a[20]; scanf("%s",a);if( m.find(a) != m.end()){//用find函数来定位数据出现位置,它返回的一个迭代器,当数据出现时,//它返回数据所在位置的迭代器,如果map中没有要查找的数据,它返回的迭代器等于end函数返回的迭代器,//  cout << m[str] << endl;printf("%d\n",m[a]);}else{printf("No Info\n");}} 	
} 

在这里插入图片描述

五:超时解决

这个题挺简单的,但是但是,这个题考的不是思路,考的是如何解决超时 废话少说 说重点

解决超时方法

1.可以多提交几次,然后卡时间,可以在pta通过
2.将输入输出改为scanf 和 printf
3.回炉重造(就是 码得重写了)

就这样了 ,下班了我啊哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈 哈哈哈哈哈哈哈哈哈哈哈哈哈哈 加油 BOY!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/308348.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux sed 写文件,使用sed对文件进行操作

使用sed对文件进行操作[日期&#xff1a;2012-12-07]来源&#xff1a;Linux社区作者&#xff1a;bobo12082119[字体&#xff1a;大 中 小]一.附加文本使用a\在指定行后面附加1行或多行&#xff1b;若不指定放置的位置&#xff0c;则默认放到每一行的后面。附加文本时&#xff0…

修复被破坏的 vs 工程设置(续)

缘起 在上一篇文章——《修复被破坏的 vs 工程设置》中&#xff0c;我分享了修复被破坏的 vs 工程设置的实战。本以为圆满解决了问题&#xff0c;没想到另有玄机。所以又来分享一篇刨根问底的文章。查看文件 打开 Microsoft.Cpp.Win32.user.props 一看&#xff0c;里面并没有任…

linux find查找文件然后删除,linu查找find命令及删除7天前的文件

在/ l o g s目录中查找更改时间在7日以前的文件并删除它们&#xff1a; $ find logs/ -type f -mtime 7 -exec rm -f {} \; 在/ l o g s目录中查找更改时间在7日以内的文件并删除它们&#xff1a; $ find logs/ -type f -mtime -7 -exec rm -f {} \; 然后加入的计划任务中每日执…

7-46 新浪微博热门话题 (30 分)(思路+详解+set + map)pta逐个点过的 来呀兄弟们

一 &#xff1a;题目 新浪微博可以在发言中嵌入“话题”&#xff0c;即将发言中的话题文字写在一对“#”之间&#xff0c;就可以生成话题链接&#xff0c;点击链接可以看到有多少人在跟自己讨论相同或者相似的话题。新浪微博还会随时更新热门话题列表&#xff0c;并将最热门的…

工作十余年,还是一直被问 委托和事件 有什么区别? 真是够了

一&#xff1a;背景1. 讲故事前几天公司一个妹子问我&#xff0c;事件和委托有什么区别&#xff1f;先由衷感叹一下&#xff0c;编码十余年&#xff0c;年轻的时候常被面试官问起&#xff0c;现在年长了&#xff0c;却被后辈们时常问候&#xff0c;看样子逃离编码生涯之前是跑不…

7-47 打印选课学生名单 (25 分)(两种做法)(思路加详解+map+vector做法+最后一个点超时解决)+兄弟们冲丫丫

一&#xff1a;题目 假设全校有最多40000名学生和最多2500门课程。现给出每个学生的选课清单&#xff0c;要求输出每门课的选课学生名单。 输入格式: 输入的第一行是两个正整数&#xff1a;N&#xff08;≤40000&#xff09;&#xff0c;为全校学生总数&#xff1b;K&#xf…

linux取设备分辨率,linux 获取系统屏幕分辨率

三步将Node应用部署到Heroku上Heroku是一个提供快速部署服务的云平台.支持Node,Ruby,Java,PHP,Python,Go多种语言,今天体验了下,简直不要太爽.下面简单的介绍一下. 首先还是要注册一个账号:https: ...jQuery操作Table tr td常用的方法虽然现在DIVCSS进行页的布局大行其道,但是很…

SwaggerUI看烦了,IGeekFan.AspNetCore.Knife4jUI 帮你换个新皮肤

背景好像是上周四&#xff0c;看到微信群有人说java有轮子swagger-bootstrap-ui&#xff0c;而c#&#xff0c;就是找不到。于是我一看&#xff0c;就说大话&#xff1a;“这个只是一套UI&#xff0c;他这个有开源地址么”被at说:你试试...当天晚上就把swagger-ui, Knife4j,Swas…

7-48 银行排队问题之单窗口“夹塞”版 (30 分)(思路和详解+map做法)来呀Baby!

一&#xff1a;题目 排队“夹塞”是引起大家强烈不满的行为&#xff0c;但是这种现象时常存在。在银行的单窗口排队问题中&#xff0c;假设银行只有1个窗口提供服务&#xff0c;所有顾客按到达时间排成一条长龙。当窗口空闲时&#xff0c;下一位顾客即去该窗口处理事务。此时如…

linux 启动程序 绑定id,linux如何根据进程ID查找启动程序的路径

昨天遇到一个问题,背景是这样的:我们工作环境不正常,使用ps命令查看,发现有程序A的两个进程状态一个是状态,一个是正常运行.由于该程序A是个通用服务程序,被拷贝成多份,分发到不同的目录中单独启动,只有各自配置不同而已,因此想知道是哪个目录的A程序处于僵死状态.正常运行中的…

7-49 打印学生选课清单 (25 分)(思路+详解+map做法(一对多)+超时解决)Come baby!

一&#xff1a;题目 假设全校有最多40000名学生和最多2500门课程。现给出每门课的选课学生名单&#xff0c;要求输出每个前来查询的学生的选课清单。 输入格式: 输入的第一行是两个正整数&#xff1a;N&#xff08;≤40000&#xff09;&#xff0c;为前来查询课表的学生总数&…

记一次批量处理数据库中的敏感信息

前言 对于一些敏感数据&#xff0c;往往会对其加密后再入库&#xff0c;这个是对数据安全性的一个最为简单的措施。最常见的莫过于手机号码和身份证号了&#xff0c;相信还是有不少公司对这些敏感信息是明文存储的。万一被别人发现系统漏洞&#xff0c;或者是被拖库&#xff0c…

修改linux路径,科学网-修改linux终端路径颜色-胡涛的博文

PuTTY或者Terminal路径默认颜色非常难看&#xff0c;如何修改&#xff1f;第一步&#xff0c;配置文件&#xff1a;命令行&#xff1a;dircolors -p > ~/.dircolors第二步&#xff0c;修改文件&#xff1a;使用vi打开~/.dircolors 文件&#xff0c;找到这一行&#xff1a; D…

7-50 畅通工程之局部最小花费问题 (35 分)(思路加详解)来呀兄弟们冲呀呀呀呀呀呀呀

一&#xff1a;题目 某地区经过对城镇交通状况的调查&#xff0c;得到现有城镇间快速道路的统计数据&#xff0c;并提出“畅通工程”的目标&#xff1a;使整个地区任何两个城镇间都可以实现快速交通&#xff08;但不一定有直接的快速道路相连&#xff0c;只要互相间接通过快速…

十多位全球技术专家,为你献上近十个小时的.Net微服务介绍

.Net Conf: Focus on Microservices 是 .Net Conf 社区在 2020 年 7 月 30 日举办的线上分享活动。整个活动视频长达近 10 个小时。今天我们来看看都发生了什么。章节汇总本次分享由十多位来自全球的资深技术专家在线分享&#xff0c;涵盖了当前 .Net 在微服务领域的利器。包括…

向linux内核增加新的系统调用,为linux内核添加新的系统调用

为linux内核添加新的系统调用作者&#xff1a;李志勇更多精彩&#xff1a;更多精彩&#xff1a;开发平台&#xff1a;x86 ubuntu目标平台&#xff1a;S3C6410linux3.4.4一、 打开内核源码目录下arch/arm/kernel/calls.S文件&#xff0c;在389行添加&#xff1a;/*378 */CALL…

5G发展是绵绵秋雨 应循序渐进

现阶段5G技术成熟度有待提升当下&#xff0c;在行业内5G基站的短板被调侃为“覆盖、成本、功耗三个3”&#xff0c;也就是3倍成本&#xff0c;3倍功耗、1/3覆盖。就功耗来说&#xff0c;5G基站是4G基站功耗的3倍左右。中国移动董事长杨杰就在GTI国际产业峰会表示&#xff0c;“…

7-52 两个有序链表序列的交集 (20 分)(思路加详解尾插法)come Boby!

一&#xff1a;题目 已知两个非降序链表序列S1与S2&#xff0c;设计函数构造出S1与S2的交集新链表S3。 输入格式: 输入分两行&#xff0c;分别在每行给出由若干个正整数构成的非降序序列&#xff0c;用−1表示序列的结尾&#xff08;−1不属于这个序列&#xff09;。数字用空…

linux可疑程序,linux可疑程序追踪

今天的主角是旁边的服务器&#xff0c;学姐的Fedora。发生的情况和我的那台ubuntu类似。(看来是一起被黑了)连接虽挡&#xff0c;进程犹在其实昨天已经发现学姐的系统出问题了&#xff0c;采取的措施和我那台一样&#xff0c;iptables直接DROP和可疑IP的连接。今天学姐说&#…

明源云创CI/CD技术演进

源宝导读&#xff1a;在敏捷迭代的过程中需要能够快速的把开发的代码集成打包部署到各个环节对应的环境中。为了高效稳定的完成这个工作&#xff0c;我们引入了DevOps实践理论&#xff0c;并形成了配套的CI/CD工具。本文将介绍云创的CI/CD工具如何演进的过程。一 、传统构建在最…