博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 1861 游船出租 tag:模拟
阅读量:5981 次
发布时间:2019-06-20

本文共 1197 字,大约阅读时间需要 3 分钟。

题目地址:     一个研究生入学考试上机题==b

思路: 将信息放在结构体里,然后存在向量中, 最后扫描到n==0就统计,输出,清空向量。  

需要注意的是 1 同一艘船可能出租两次,于是扫描到op=='E' 时,就要立马处理。

                         2 扫描到 op=='E' 时 ,还要看是否有S的记录,如果没有找到就不处理

                         3 从00:00 -> 00:00 算是借了一分钟~   而不是差值0分钟

                         4 字符串和整数之间转化   用stringstream ,#include <sstream>

 代码:

#include
#include
#include
#include
#include
#include
using namespace std;struct info{ int number; char op; string time;};int stringtoint(string s){ int ans; stringstream ss; ss<
>ans; return ans;}int main(){ int n; vector
v; while(cin>>n) { info theinfo; char op; cin>>op; string time; cin>>time; if(n==-1) break; if(n==0) { int count=0; double ave=0; map
start; map
end; for(int i=0;i
second.substr(0,2); string startminute=start.find(v[i].number)->second.substr(3,2); string endhour=v[i].time.substr(0,2); string endminute=v[i].time.substr(3,2); // 分钟计算小心一点 if(startminute<=endminute) ave+=stringtoint(endminute)-stringtoint(startminute); else { ave+=stringtoint(endminute)-stringtoint(startminute)+1; } ave+=(stringtoint(endhour)-stringtoint(starthour))*60; } } v.clear(); if(count!=0) ave=ave/count; cout<
<<" "<
<

转载于:https://www.cnblogs.com/814jingqi/p/3247187.html

你可能感兴趣的文章
启动oracle em命令
查看>>
Android Studio 第五十六期 - Android之系统设置选项的包名
查看>>
mysql准实时同步数据到Elasticsearch
查看>>
Django+ PowerShell 管理AD系统
查看>>
MFA(Multi-Factor Authentication)应用之Outlook2013排错
查看>>
Kickstart+HTTP+DHCP+TFTP全自动批量安装部署Linux系统
查看>>
Docker学习之容器
查看>>
17.Azure备份(MARS)代理(上)
查看>>
解决MSN无法登录问题的意外收获
查看>>
不只是折腾!OS X 10.10 Yosemite 改造攻略
查看>>
演示:通过实验取证IP报文的各个字段
查看>>
C#设计模式(6)——原型模式(Prototype Pattern)
查看>>
Lync日常维护之三:客户端显示状态未更新的处理方法
查看>>
Oracle网格控制器OMA端安装Yast
查看>>
open***负载均衡高可用多种解决方案思路及实战讲解(总)
查看>>
自动部署LNMP脚本
查看>>
Rethinking PID 1 (About Systemd)
查看>>
我的家庭私有云计划-20
查看>>
在VMware Workstation中批量创建上千台虚拟机(上)
查看>>
实战操作百度文库、百度经验营销,让您的“流量”稳居首页
查看>>