PAT (Advanced Level) Practice - 1016 Phone Bills(25 分)
发布日期:2021-06-30 23:43:21
浏览次数:3
分类:技术文章
本文共 910 字,大约阅读时间需要 3 分钟。
题目链接:
题目大意:略。
解题思路:
- 筛选合格数据:将给出的数据先按照姓名排序,再按照时间的先后顺序排列,这样遍历的时候,前后两个名字相同且前面的状态为on-line后面一个的状态为off-line的就是合格数据。
- 计算费用:一律用差分来做,中间的跨天来用 cst[24] * day * 60 来统计。
AC 代码
#include#include #define mem(a,b) memset(a,b,sizeof a)#define ssclr(ss) ss.clear(), ss.str("")#define INF 0x3f3f3f3f#define MOD 1000000007using namespace std;typedef long long ll;struct node{ string name; int sta,time,MM,dd,hh,mm;};int cst[25];vector data(1009);int cmp(node n1,node n2){ return n1.name!=n2.name ? n1.name >data[i].name; scanf("%d:%d:%d:%d%s",&data[i].MM,&data[i].dd,&data[i].hh,&data[i].mm,op); data[i].sta=op[1]=='n'?1:0; data[i].time=data[i].dd*24*60+data[i].hh*60+data[i].mm; } sort(data.begin(),data.begin()+n,cmp); map > mp; for(int i=1;i nd=it.second; printf("%s %02d\n",it.first.c_str(),nd[0].MM); double sum=0, ans; for(int i=1;i
转载地址:https://lux-sun.blog.csdn.net/article/details/82145081 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年04月12日 07时14分16秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
solr修改schema文件(solr修改配置文件)
2019-04-30
select下拉框分组展示插件的使用--(select-mania插件的使用)
2019-04-30
Java Lambda表达式的应用--Stream API操作集合框架
2019-04-30
solr的使用详解
2019-04-30
Myslq连接(JDBC)url属性的参数的设置
2019-04-30
关于Spring MVC与前端的交互
2019-04-30
JQuery使用validate插件完成校验
2019-04-30
一个简单的layui登陆界面
2019-04-30
大厂经典面试题:Redis为什么这么快?
2019-04-30
阿里四面,居然栽在一道排序算法上
2019-04-30
如何在二三线城市月薪过万(一)看完这篇后端简历优化,包你面试不断
2019-04-30
膜拜!阿里内部都在强推的K8S(kubernetes)学习指南,不能再详细了
2019-04-30
Android之Retrofit基本用法篇
2019-04-30
Netty与网络协议资料整理
2019-04-30
设置Golang的开发环境
2019-04-30
对HTTP/2的部分理解
2019-04-30
Golang 逃逸分析
2019-04-30
golang实现大数据量文件的排序
2019-04-30