当前位置: 首页 > news >正文

中文域名到期对网站的影响qq引流推广软件哪个好

中文域名到期对网站的影响,qq引流推广软件哪个好,公众号开发运营方案,阜阳网站建设专业机构医院里有n(n≤10)个手术室和m(m≤30)个恢复室。每个病人首先会被分配到一个手术室,手术后会被分配到一个恢复室。从任意手术室到任意恢复室的时间均为t1,准备一个手术室和恢复室的时间分别为t2和t3&#xf…

医院里有n(n≤10)个手术室和m(m≤30)个恢复室。每个病人首先会被分配到一个手术室,手术后会被分配到一个恢复室。从任意手术室到任意恢复室的时间均为t1,准备一个手术室和恢复室的时间分别为t2和t3(一开始所有手术室和恢复室均准备好,只有接待完一个病人之后才需要为下一个病人准备)。
k名(k≤100)病人按照花名册顺序排队,T点钟准时开放手术室。每当有准备好的手术室时,队首病人进入其中编号最小的手术室。手术结束后,病人应立刻进入编号最小的恢复室。如果有多个病人同时结束手术,在编号较小的手术室做手术的病人优先进入编号较小的恢复室。输入保证病人无须排队等待恢复室。
输入n、m、T、t1、t2、t3、k和k名病人的名字、手术时间和恢复时间,模拟这个过程。

样例:
输入

5 12 07 5 15 10 16
Jones
28 140
Smith
120 200
Thompson
23 75
Albright
19 82
Poucher
133 209
Comer
74 101
Perry
93 188
Page
111 223
Roggio
69 122
Brigham
42 79
Nute
22 71
Young
38 140
Bush
26 121
Cates
120 248
Johnson
86 181
White
92 140

输出

 Patient          Operating Room          Recovery Room#  Name     Room#  Begin   End      Bed#  Begin    End------------------------------------------------------1  Jones      1    7:00    7:28      3    7:33    9:532  Smith      2    7:00    9:00      1    9:05   12:253  Thompson   3    7:00    7:23      2    7:28    8:434  Albright   4    7:00    7:19      1    7:24    8:465  Poucher    5    7:00    9:13      5    9:18   12:476  Comer      4    7:34    8:48      4    8:53   10:347  Perry      3    7:38    9:11      2    9:16   12:248  Page       1    7:43    9:34      6    9:39   13:229  Roggio     4    9:03   10:12      9   10:17   12:19
10  Brigham    2    9:15    9:57      8   10:02   11:21
11  Nute       3    9:26    9:48      7    9:53   11:04
12  Young      5    9:28   10:06      3   10:11   12:31
13  Bush       1    9:49   10:15     10   10:20   12:21
14  Cates      3   10:03   12:03      8   12:08   16:16
15  Johnson    2   10:12   11:38      4   11:43   14:44
16  White      5   10:21   11:53      7   11:58   14:18Facility Utilization
Type  # Minutes  % Used
-------------------------
Room  1     165   29.68
Room  2     248   44.60
Room  3     258   46.40
Room  4     162   29.14
Room  5     263   47.30
Bed   1     282   50.72
Bed   2     263   47.30
Bed   3     280   50.36
Bed   4     282   50.72
Bed   5     209   37.59
Bed   6     223   40.11
Bed   7     211   37.95
Bed   8     327   58.81
Bed   9     122   21.94
Bed  10     121   21.76
Bed  11       0    0.00
Bed  12       0    0.00

解法:

use std::{cmp::Ordering, collections::BinaryHeap, io};
#[derive(Debug)]
struct Patient {id: usize,name: String,operation_time: usize,recovery_time: usize,room_id: usize,room_begin_time: usize,room_end_time: usize,bed_id: usize,bed_begin_time: usize,bed_end_time: usize,
}
#[derive(Debug, PartialEq, Eq)]
struct Room {id: usize,start_available_time: usize,
}
impl Ord for Room {fn cmp(&self, other: &Self) -> std::cmp::Ordering {if self.start_available_time != other.start_available_time {if self.start_available_time < other.start_available_time {Ordering::Greater} else {Ordering::Less}} else if self.id < other.id {Ordering::Greater} else {Ordering::Less}}
}
impl PartialOrd for Room {fn partial_cmp(&self, other: &Self) -> Option<Ordering> {Some(self.cmp(other))}
}fn main() {let mut buf = String::new();io::stdin().read_line(&mut buf).unwrap();let v: Vec<usize> = buf.split_whitespace().map(|e| e.parse().unwrap()).collect();let n = v[0];let m = v[1];let start_time = v[2] * 60;let t1 = v[3];let t2 = v[4];let t3 = v[5];let k = v[6];let mut rooms = BinaryHeap::new();for i in 0..n {let room = Room {id: i + 1,start_available_time: start_time,};rooms.push(room);}let mut patients: Vec<Patient> = vec![];for i in 0..k {let mut buf = String::new();io::stdin().read_line(&mut buf).unwrap();let name = buf.trim().to_string();let mut buf = String::new();io::stdin().read_line(&mut buf).unwrap();let t: Vec<usize> = buf.split_whitespace().map(|e| e.parse().unwrap()).collect();let patient = Patient {id: i + 1,name: name,operation_time: t[0],recovery_time: t[1],room_id: 0,room_begin_time: 0,room_end_time: 0,bed_id: 0,bed_begin_time: 0,bed_end_time: 0,};patients.push(patient);}let mut room_used_time: Vec<usize> = vec![0; n];for patient in patients.iter_mut() {let aroom = rooms.pop().unwrap();patient.room_id = aroom.id;patient.room_begin_time = aroom.start_available_time;patient.room_end_time = patient.room_begin_time + patient.operation_time;rooms.push(Room {id: aroom.id,start_available_time: patient.room_end_time + t2,});room_used_time[aroom.id - 1] += patient.operation_time;}patients.sort_by(|a, b| {if a.room_end_time != b.room_end_time {if a.room_end_time < b.room_end_time {Ordering::Less} else {Ordering::Greater}} else {if a.room_id < b.room_id {Ordering::Less} else {Ordering::Greater}}});let mut beds: Vec<usize> = vec![start_time; m];let mut bed_used_time: Vec<usize> = vec![0; m];let mut final_time = start_time;for patient in patients.iter_mut() {for j in 0..m {if beds[j] <= patient.room_end_time {patient.bed_id = j + 1;patient.bed_begin_time = patient.room_end_time + t1;patient.bed_end_time = patient.bed_begin_time + patient.recovery_time;beds[j] = patient.bed_end_time + t3;bed_used_time[j] += patient.recovery_time;final_time = final_time.max(patient.bed_end_time);break;}}}patients.sort_by(|a, b| a.id.cmp(&b.id));println!(" Patient          Operating Room          Recovery Room");println!(" #  Name     Room#  Begin   End      Bed#  Begin    End");println!(" ------------------------------------------------------");for i in patients.iter() {print!("{:2}  {:<10}", i.id, i.name);print!("{:2}   {:2}:{:02}   {:2}:{:02}",i.room_id,i.room_begin_time / 60,i.room_begin_time % 60,i.room_end_time / 60,i.room_end_time % 60);println!("     {:2}   {:2}:{:02}   {:2}:{:02}",i.bed_id,i.bed_begin_time / 60,i.bed_begin_time % 60,i.bed_end_time / 60,i.bed_end_time % 60);}println!();println!("Facility Utilization");println!("Type  # Minutes  % Used");println!("-------------------------");let all_time = final_time - start_time;for i in 0..n {println!("Room {:2}    {:4}   {:5.2}",i + 1,room_used_time[i],100.0 * room_used_time[i] as f64 / all_time as f64);}for i in 0..m {println!("Bed  {:2}    {:4}   {:5.2}",i + 1,bed_used_time[i],100.0 * bed_used_time[i] as f64 / all_time as f64);}
}
http://www.yayakq.cn/news/802652/

相关文章:

  • 济南网站seo技术域名怎么买
  • 站长工具是什么意思腾讯企业邮箱app下载
  • 帮传销做网站做视频网站视频加载过慢
  • 买个域名就可以建立网站吗社保网上服务大厅
  • 深圳华丰大厦网站建设西宁市企业建站专业
  • 有必要自建网站做导购吗软件定制开发服务流程
  • 襄阳网站定制福州搜索引擎优化
  • 网站建站要多少钱中国十大搜索引擎排名
  • 5站合一 网站建设网站的登陆页怎么做图片
  • 微信订阅号怎么做网站泉州排名推广
  • 建设网站实训收获wordpress 分类目录 子目录
  • 公司请做网站wordpress 主机平台
  • 广州网站建设开发公司网络科技公司图片
  • 紫金网站建设公司山东烟台建设厅网站
  • 哈尔滨网站关键词优化排名房地产开发公司招聘
  • ic交易网站建设模板之家官网
  • 重庆网站制作有名 乐云践新广州seo运营
  • 南通网站设计制作公司Wordpress視頻加密
  • 网站建设 dw 时间轴沈阳化工大学建设工程网
  • 佛山外贸网站制作公司wordpress多个page
  • 沈阳网站建设选网龙wordpress 文章选择器
  • 深圳企业网站建设开发费用视频类的网站制作
  • 网站对联模板苏州 网站的公司
  • 北京网站建设在哪里天官方企业微信app下载
  • 做网站后台系统的规范如何修改WordPress备份中的网址
  • 做矢量图的网站代理浏览器
  • 做网站店铺图片用什么软件无锡公共工程建设中心网站
  • 网站源码分享网站建设合同甲乙双方怎么确定
  • 在网上做效果图的网站东莞公司网站制作公司
  • 做搜狗网站关键词排名杭州市临安区建设局网站