华为OD机试真题-文件缓存系统-2023年OD统一考试(C卷)

news/2024/7/20 17:12:30 标签: 华为od, 缓存, c语言, python, java

题目描述:

请设计一个文件缓存系统,该文件缓存系统可以指定缓存的最大值(单位为字节)。

文件缓存系统有两种操作:存储文件(put)和读取文件(get)

操作命令为put fileName fileSize或者get fileName

存储文件是把文件放入文件缓存系统中;读取文件是从文件缓存系统中访问已存在的文件,如果文件不存在,则不作任何操作。

缓存空间不足以存放新的文件时,根据规则删除文件,直到剩余空间满足新的文件大小为止,再存放新文件。
具体的删除规则为:
文件访问过后,会更新文件的最近访问时间和总的访问次数,当缓存不够时,按照第一优先顺序为访问次数从少到多,第二顺序为时间从老到新的方式来删除文件。

输入描述:

第一行为缓存最大值m(整数,取值范围为0 < m <= 52428800);

第二行为文件操作序列个数n(0 <= n <= 300000
从第三行起为文件操作序列,每个序列单独一行
文件操作定义为"op file_namefile_size"
file_name是文件名,file_size是文件大小

输出描述:

输出当前文件缓存中的文件名列表,文件名用英文逗号分隔,按字典顺序排序
如:
a,c

如果文件缓存中没有文件,则输出NONE

补充说明:

1.  如果新文件的文件名和文件缓存中已有的文件名相同࿰


http://www.niftyadmin.cn/n/5267574.html

相关文章

HarmonyOS4.0从零开始的开发教程17给您的应用添加通知

HarmonyOS&#xff08;十五&#xff09;给您的应用添加通知 通知介绍 通知旨在让用户以合适的方式及时获得有用的新消息&#xff0c;帮助用户高效地处理任务。应用可以通过通知接口发送通知消息&#xff0c;用户可以通过通知栏查看通知内容&#xff0c;也可以点击通知来打开应…

N5105 docker jellyfin核显配置

N5105 docker jellyfin核显配置 背景说明&#xff1a;之前使用N5105的jellyfin&#xff0c;在解码时一直出现错误导致播放问题&#xff0c;经过多次尝试都没有成功。近期发现是设备给的信息除了问题&#xff0c;进行记录。 环境说明&#xff1a;N5105CPU&#xff0c;unraid环境…

静态IP和动态IP分别适用于什么场景

静态IP和动态IP分别适用于不同的场景&#xff0c;这主要取决于网络需求、设备类型以及服务的性质。以下是它们各自适用的一些常见场景&#xff1a; **静态IP地址&#xff08;Static IP Address&#xff09;的应用场景&#xff1a;** 1. **服务器**&#xff1a;运行网站、邮件…

基于Python实现的一个文档扫描仪应用程序,它可以帮助用户加载图片并裁剪文档,提供方便的文档扫描功能

doc_scanner 项目描述 这个项目是一个文档扫描仪应用程序&#xff0c;使用Python编写。它可以帮助用户加载图片并裁剪文档&#xff0c;提供方便的文档扫描功能。 项目运行效果截图 功能 选择图片&#xff1a;通过点击 “Select Image” 按钮选择要加载的图片。裁剪文档&…

Knowledge Graph知识图谱—8. Web Ontology Language (OWL)

8. Web Ontology Language (OWL) 在RDFs不可能实现&#xff1a; Property cardinalities, Functional properties, Class disjointness, we cannot produce contradictions, circumvent the Non Unique Naming Assumption, circumvent the Open World Assumption 8.1 OWL Tr…

MybatisPlus教程

目录 一、入门 二、常用注解 MybatisPlus中比较常用的几个注解如下&#xff1a; IdType枚举&#xff1a; 使用TableField的常见场景&#xff1a; 总结&#xff1a; 三、常见配置 MyBatisPlus使用的基本流程是什么&#xff1f; 四、核心功能 1、条件构造器 QueryWrapp…

网格布局 Grid

网格布局 网格布局的API grid 布局将网页划分成一个个网格&#xff0c;可以任意组合不同的网格成“行和列”&#xff0c;可以定义这些网格的大小、位置、层次等关系&#xff0c;从而实现各种各样的布局。 Grid 布局远比 Flex 布局强大。弹性布局&#xff08;flex&#xff09;和…

解决windows环境变量配置完不生效

方法1. 重启 下面两种方法不重启 方法2. 手动打开cmd&#xff0c;输入命令 set PATHc&#xff0c;这个命令是使你写在path中的变量立即生效&#xff0c;然后重启cmd验证&#xff0c;补充&#xff08;echo %PATH%可查看系统环境变量&#xff09;我是百度说系统变量缺失所以直接…