【华为OD机试 2023最新 】 区块链文件转储系统(C++ 100%)
2023-09-14 09:06:45 时间
题目描述
区块链底层存储是一个链式文件系统,由顺序的N个文件组成,每个文件的大小不一,依次为F1,F2,…,Fn。随着时间的推移,所占存储会越来越大。
云平台考虑将区块链按文件转储到廉价的SATA盘,只有连续的区块链文件才能转储到SATA盘上,且转储的文件之和不能超过SATA盘的容量。
假设每块SATA盘容量为M,求能转储的最大连续文件之和。
输入描述
第一行为SATA盘容量M,1000 ≤ M ≤ 1000000
第二行为区块链文件大小序列F1,F2,…,Fn。其中 1 ≤ n ≤ 100000,1 ≤ Fi ≤ 500
输出描述
求能转储的最大连续文件大小之和
用例
输入 | 1000 100 300 500 400 400 150 100 |
输出 | 950 |
说明 | 最大序列和为950,序列为[400,400,150] |
输入 | 1000 100 500 400 150 500 100 |
输出 | 1000 |
说明 | 最大序列和为1000,序列为[100,500,400] |
题目解析
本质上就是求解连续子数组的和,如果满足最接近最大值M,则输出这个连续子数组。
本题的滑动窗口的左边界l,右边界r的运动逻
相关文章
- C++多态案例(三)-电脑组装
- EasyC++57,类的实现
- 【贪玩巴斯】C/C++文件IO流操作的 seekp和seekg详解「建议收藏」
- C/C++——打开文件读取数据的各种方式「建议收藏」
- c++cstring头文件_fstream头文件
- c++读写文件的几种方法_include有什么用
- C++基本概念_c语言 c++区别
- C++基础——Ubuntu下编写C++环境配置总结(C++基本简介、Ubuntu环境配置、编写简单C++例程)
- C++ Primer Plus习题及答案-第十三章
- 论c++中的文件操作(竞赛必看)通俗易懂
- c++的链表-C++链表
- C/C++ 查找指定文件HEX特征
- C/C++ Qt 基本文件读写方法
- C++ 取出字符串中的所有整数
- 【C++ 语言】Visual Studio 配置 POSIX 线程 ( Windows 不支持 POSIX | 配置文件下载 | 库文件说明 | 配置过程 )
- 【C++修炼之路】13. priority_queue及仿函数
- C++文件读写详解(ofstream,ifstream,fstream)编程语言
- C++ vector容量和大小
- C++ fixed用法详解
- C++文件依存关系介绍
- C++读写.mat文件的方法
- c++中.dll与.lib文件的生成与使用的详解
- C/C++多线程的学习心得总结
- c++读写文件流实例程序讲解
- C/C++获取目录下的文件列表信息
- C++实现二维图形的傅里叶变换