2019蓝桥杯省赛---java---B---7(外卖店优先级)

题目描述

时间限制: 1.0s 内存限制: 512.0MB 本题总分:20 分
【问题描述】
“饱了么”外卖系统中维护着 N 家外卖店,编号 1 ∼ N。每家外卖店都有 一个优先级,初始时 (0 时刻) 优先级都为 0。
每经过 1 个时间单位,如果外卖店没有订单,则优先级会减少 1,最低减 到 0;而如果外卖店有订单,则优先级不减反加,每有一单优先级加 2。
如果某家外卖店某时刻优先级大于 5,则会被系统加入优先缓存中;如果 优先级小于等于 3,则会被清除出优先缓存。
给定 T 时刻以内的 M 条订单信息,请你计算 T 时刻时有多少外卖店在优先缓存中。
【输入格式】
第一行包含 3 个整数 N、M 和 T。
以下 M 行每行包含两个整数 ts 和 id,表示 ts 时刻编号 id 的外卖店收到 一个订单。
【输出格式】
输出一个整数代表答案。
【样例输入】
2 6 6
1 1
5 2
3 1
6 2
2 1
6 2
【样例输出】
1
【样例解释】
6 时刻时,1 号店优先级降到 3,被移除出优先缓存;2 号店优先级升到 6,加入优先缓存。所以是有 1 家店 (2) 在优先缓存中。
【评测用例规模与约定】
对于 80% 的评测用例,1 ≤ N, M, T ≤ 10000

思路分析

类似于:日志统计https://wdlyb.blog.csdn.net/article/details/115449611

代码实现

package lanqiao;import java.util.*;
public class Main{static int counts=0;public static void main(String[] args) {Scanner sc=new Scanner(System.in);int N=sc.nextInt();int M=sc.nextInt();int T=sc.nextInt();Map<Integer,List>map=new HashMap<>();for(int i=0;i<M;i++) {int value=sc.nextInt();int key=sc.nextInt();if(map.get(key)==null) {List<Integer>list = new ArrayList<>();list.add(value);map.put(key, list);}else {map.get(key).add(value);}}for(Integer key:map.keySet()) {List<Integer>list =map.get(key);int[]times=new int[T+1];for(Integer i:list)times[i]++;int nowCount=0;//记录优先级for(int i=1;i<=T;i++) {if(times[i]>0) {nowCount+=times[i]*2;}else {if(nowCount>0)nowCount--;}}if(nowCount>=5)counts++;}System.out.println(counts);}
}

# 答案

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

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

相关文章

left join 和 left outer join 的区别

通俗的讲&#xff1a; A left join B 的连接的记录数与A表的记录数同 A right join B 的连接的记录数与B表的记录数同 A left join B 等价B right join A table A: Field_K, Field_A 1 a 3 b 4 c table B: Field_K, Field_B 1 x 2 y 4 z select a.Field_K, a.…

服务器母鸡系统,母鸡云服务器

母鸡云服务器 内容精选换一换云耀云服务器创建成功后&#xff0c;您可以根据需求&#xff0c;修改云服务器的名称。系统支持批量修改多台云耀云服务器的名称&#xff0c;修改完成后&#xff0c;这些云耀云服务器的名称相同。登录控制台。单击管理控制台左上角的&#xff0c;选择…

在ASP.NET Core中使用Apworks开发数据服务:对HAL的支持

HAL&#xff0c;全称为Hypertext Application Language&#xff0c;它是一种简单的数据格式&#xff0c;它能以一种简单、统一的形式&#xff0c;在API中引入超链接特性&#xff0c;使得API的可发现性&#xff08;discoverable&#xff09;更强&#xff0c;并具有自描述的特点。…

.net三层架构开发步骤

City城市表&#xff0c;id ,name,password,address,phone; 1.新建一个windows窗体应用程序&#xff0c;CitySys 2.文件–》添加–》新建项目–》类库&#xff08;CitySysModel&#xff09;–》重命名class1.cs的类&#xff08;CityModel&#xff09;。 3.根据数据表里面的字段&…

JAVA多线程和并发面试问题

转载自 JAVA多线程和并发面试问题 Java多线程面试问题 1.进程和线程之间有什么不同&#xff1f; 一个进程是一个独立(self contained)的运行环境&#xff0c;它可以被看作一个程序或者一个应用。而线程是在进程中执行的一个任务。Java运行环境是一个包含了不同的类和程序的…

C#各个版本中的新增特性详解

序言 自从2000年初期发布以来&#xff0c;c#编程语言不断的得到改进&#xff0c;使我们能够更加清晰的编写代码&#xff0c;也更加容易维护我们的代码&#xff0c;增强的功能已经从1.0搞到啦7.0甚至7.1&#xff0c;每一次改过都伴随着.NET Framework库的相应支持&#xff0c;也…

微内核操作系统能做服务器系统吗,科普:微内核操作系统现状

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼微内核结构是1980年代产生出来的较新的内核结构&#xff0c;强调结构性部件与功能性部件的分离。20世纪末&#xff0c;基于微内核结构&#xff0c;理论界中又发展出了超微内核与外内核等多种结构。尽管自1980年代起&#xff0c;大部…

2019蓝桥杯省赛---java---A---8(修改数组)

题目描述 思路分析 不是每次1了&#xff0c;而是直接加相同数字出现过的次数&#xff0c;比如有3个1&#xff0c;第二个1就是1&#xff0c;第三个直接2&#xff0c;而不是两次1&#xff0c;而且每次都记录每次的新值出现的次数&#xff0c;这样循环到新数未出现过为止 代码实…

HTML、sqlserver数据库和java前七章节的复习(一)

1.HTML的基本结构 <!doctype> <html><head><title></title></head><body></body> </html>2.有序列表 <ol><li></li></ol>3.无序列表 <ul><li></li></ul>4.写一个边…

Java异常面试问题

转载自 Java异常面试问题 1.什么是Java中的异常&#xff1f; 异常是在程序执行期间可能发生的错误事件&#xff0c;并且会中断它的正常流程。异常可能来自不同类型的情况&#xff0c;例如用户输入的错误数据&#xff0c;硬件故障&#xff0c;网络连接故障等。 每当执行jav…

复习总结01110

.1.//从控制台输入3个数&#xff0c;然后按从小到输出public static void test_num(){Scanner sc new Scanner(System.in);System.out.println("请输入第一个数&#xff1a;");int num1 sc.nextInt();System.out.println("请输入第二个数&#xff1a;");…

ASP.NET Core 网站在Docker中运行

Docker作为新一代的虚拟化方式&#xff0c;未来肯定会得到广泛的应用&#xff0c;传统虚拟机的部署方式要保证开发环境、测试环境、UAT环境、生产环境的依赖一致性&#xff0c;需要大量的运维人力&#xff0c;使用Docker我们可以实现一次部署&#xff0c;到处运行。 本文介绍如…

键值存储之外,Redis还有这些用法

转载自 键值存储之外&#xff0c;Redis还有这些用法 Redis是一个强大的内存数据结构存储&#xff0c;包含数据库&#xff0c;缓存和消息代理等多种用途。大多数人经常认为它不过是一个简单的键值存储&#xff0c;但其实它有更多的能力。下面给出一些实例 1.全页面缓存 首先…

2018蓝桥杯省赛---java---C---3(字母阵列)

题目描述 测试数据 FOAIQNALWIKEGNICJWAOSXDHTHZPOLGYELORAUHOHCZIERPTOOJUITQJCFNIYYQHSBEABBQZPNGYQTCLSKZFCYWDGOAIADKLSNGJ GSOZTQKCCSDWGUWAUOZKNILGVNLMCLXQVBJENIHIVLRPVVXXFTHQUXUAVZZOFFJHYLMGTLANQIAOQQILCDCJERJASNCTLYGRMHGF TSDFYTLVIBHKLJVVJUDMKGJZGNNSTPVLCKT…

复习总结0111

1.从控制台中输入三个数&#xff0c;然后从小到大输出 public static void mian(String []args){Scanner sc new Scanner(System.in);System.out.println("请输入第一个数&#xff1a;");int a sc.nextInt();System.out.println("请输入第二个数&#xff1a;&…

sql基本命令整理

1、 查看数据库中的表或查询数据库&#xff1b; show tables/databases&#xff1b; 2、 查看数据库中所有的表 show tables&#xff1b;&#xff08;前提是使用use database 数据库&#xff1b;&#xff09; 3、 查看数据表结构 describe 表名&#xff1b; 4、 创建数据…

微软确认5月2日召开新品发布会 8天后就是Build 2017大会

援引外媒 ZDNet 报道&#xff0c;微软计划在 5 月上旬召开新品发布会&#xff0c;重点围绕着 Windows 10 Cloud&#xff0c;并且有望公布关于 Surface Pro 5 的相关信息。今天这条消息已经得到了证实&#xff0c;微软官方宣布将于 5 月 2 日将会在纽约召开发布会&#xff0c;也…

面试进阶之字符串常量池

转载自 面试进阶之字符串常量池 作为最基础的引用数据类型&#xff0c;Java 设计者为 String 提供了字符串常量池以提高其性能&#xff0c;那么字符串常量池的具体原理是什么&#xff0c;我们带着以下三个问题&#xff0c;去理解字符串常量池&#xff1a; 字符串常量池的设计…

java实现人脸识别V3版本开发

有段时间没有写更新公众号了&#xff0c;也许好多人都忘记了自己还关注了这么个公众号。因为这段时间确实是有其他的事比较忙&#xff0c;还有一个原因就是自己在技术方面没有学习新的东西&#xff0c;所以没有可更新的&#xff08;包括博客&#xff09;今天&#xff0c;我决定…

2018蓝桥杯省赛---java---A---7(三体攻击)

题目描述 题目&#xff1a;三体人将对地球发起攻击。为了抵御攻击&#xff0c;地球人派出了 A  B  C 艘战舰&#xff0c;在太空中排成一个 A 层 B 行 C 列的立方体。其中&#xff0c;第 i 层第 j 行第 k 列的战舰&#xff08;记为战舰 (i, j, k)&#xff09;的生命值为 …