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

OD 算法题 B卷【通过软盘拷贝文件】

文章目录

  • 通过软盘拷贝文件

通过软盘拷贝文件

  • 将计算机中的信息拷贝到软盘中,做到软盘中文件内容总大小最大;
  • 软盘容量为1474560字节,文件占用的软盘空间按块分配,每个块大小为512字节。一个块只能被一个文件使用,拷贝到软盘中的文件必须是完整的,且不能压缩;

输入描述:
第一行输入N,表示文件的数量;N在【1,1000】
后续的N行,每行一个整数,表示每个文件的大小Si,单位字节

*输出描述:
最多能拷贝的文件总大小

示例1
输入:
3
737270
737272
737288
输出:
1474542

示例2
输入:
6
400000
200000
200000
200000
400000
400000
输出:
1400000

python实现

  • 01背包问题

import math# 输入数据
n = int(input().strip())
nums = []
for i in range(n):nums.append(int(input().strip()))#
dp = [0 for i in range(3000)]  # 索引为空闲块数
for num in nums:# 软盘总有的块数j = 2880# 空闲总块数 大于等于当前 文件需要的块数file_block = math.ceil(num / 512)  # 当前文件占用的块数while j >= file_block:dp[j] = max(dp[j], dp[j - file_block] + num)j -= 1print(dp[2880])
http://www.xdnf.cn/news/793675.html

相关文章:

  • C++结构体初始化方式区别
  • Windows下将Nginx设置注册安装为服务方法!
  • 爱普生有源晶振SG2520CBN在通信基站中的应用
  • UVa12298 Super Joker II
  • AI一周事件(2025年5月27日-6月2日)
  • JavaScript 递归构建树形结构详解
  • linux学习第19、20天(父子进程)
  • 选择正确的电平转换解决方案
  • HertzBeat的告警规则如何配置?
  • Flowith,有一种Agent叫无限
  • MyBatis 深度解析:高效 Java 持久层框架实践指南(基于 3.5.10)
  • 黑马程序员TypeScript课程笔记—class篇
  • windows环境下Ubuntu系统怎么重置root密码
  • 鸿蒙5.0项目开发——横竖屏切换开发
  • 深入解析 Java 中的 synchronized:从使用到底层原理的全面详解
  • C++中锁和原子操作的区别及取舍
  • 楼宇自控系统联动暖通空调:解密建筑环境舒适度提升路径
  • 域自适应 (Domain Adaptation,DA)基础
  • JS对数据类型的检测
  • TitanIDE智算版:一键开启云端算法开发环境
  • Servlet 生命周期
  • 高性能MCU的MPU与Cache优化详解
  • 线性动态规划
  • 张雪峰为9岁女儿申请40个左右商标!
  • 超声波粒度仪市场报告:行业现状、竞争格局与未来趋势分析
  • 原子操作与非原子操作
  • RTOS,其高级使用
  • TypeScript中class的两种继承方式extends和implements的对比
  • HTML5新特性
  • DAY 20 奇异值SVD分解