【u222】选课
Time Limit: 1 second
Memory Limit: 128 MB
【问题描述】
黄黄游历完学校,就开始要选课上了。 黄黄同学所在的学校有一个奇怪的上课系统,有N种课可以选择,每种课可以重复地上,并且,每次上都花掉同样的时间,获得同样的知识量。 黄黄同学每天有一定的上课时间总额,他想获得最大的知识量,你能告诉他最多能得到多少知识吗?
【输入格式】
输入文件class.in的第一行有两个整数N、M,表示有N种课,他每天有M个学习时问 单位。 接下来N行,每行有两个数Pi、wi,代表一种课所花时间单位和所获得的知识量。
【输出格式】
输入文件class.out只包括一个整数s,表示黄黄同学通过一天的课堂学习可能获得的最大知识量。
【数据规模】
对于100%的数据,保证N≤1000,M≤1000,Pi≤100,Wi≤100。
Sample Input1
3 11
2 5
3 6
6 18
Sample Output1
29
【题解】
这是一道裸的完全背包问题。记得完全背包是顺序更新的就可以了。最后输出f[m]表示学习时间不超过m获得的最大知识量。
【代码】
#include <cstdio>
int n,m,w[1001],c[1001],f[1001] = {0};
int main()
{
//freopen("F:\\rush.txt","r",stdin);
scanf("%d%d",&n,&m);
for (int i = 1;i <= n;i++)
scanf("%d%d",&w[i],&c[i]); //w是花费c是知识量
for (int i = 1;i <= n;i++)
for (int j = w[i];j <= m;j++) //完全背包是顺序更新的。
if (f[j] < f[j-w[i]] + c[i])
f[j] = f[j-w[i]] + c[i];
printf("%d",f[m]); //最后输出所用时间量不超过m所能获得的最大知识量。
return 0;
}
【u222】选课的更多相关文章
- 从零开始学Python06作业思路:学生选课系统
一,作业要求 选课系统: 管理员: 创建老师:姓名.性别.年龄.资产 创建课程:课程名称.上课时间.课时费.关联老师 学生:用户名.密码.性别.年龄.选课列表[].上课记录{课程1:[di,a,]} ...
- python之选课系统详解[功能未完善]
作业需求 思路:1.先写出大体的类,比如学校类,学生类,课程类-- 2.写出类里面大概的方法,比如学校类里面有创建讲师.创建班级-- 3.根据下面写出大致的代码,并实现其功能 遇到的困 ...
- 第一章-第六题(帮人抢票,帮人选课这些软件是否合法 你怎么看?)--By梁旭晖
我觉得这些软件是合法的,符合道德规范的. 计算机当初设计的初衷就是简化甚至替代人类的工作.而软件作为计算机硬件的驱动着,其设计就是体现这些原则. 现在互联网上的订票,选课类型的网站还是有很多的,比如: ...
- Python开发程序:选课系统-改良版
程序名称: 选课系统 角色:学校.学员.课程.讲师要求:1. 创建北京.上海 2 所学校2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. ...
- SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句
附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', file ...
- BFS、DFS与选课问题(拓扑排序)
1选课问题 Leetcode上有这样一道题:有代号0,1,2……n-1的n门课程.其中选择某些课程需要另一些课程作为前提条件.用一组pair来表示这些条件:[1,0],[1,2],表示如果要选修课程1 ...
- Codevs1378选课[树形DP|两种做法(多叉转二叉|树形DP+分组背包)---(▼皿▼#)----^___^]
题目描述 Description 学校实行学分制.每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分.学校开设了N(N<300)门的选修课程,每个学生可选课程的数量M是给定的.学生选修 ...
- python实现学生选课系统 面向对象的应用:
一.要求: 选课系统 管理员: 创建老师:姓名.性别.年龄.资产 创建课程:课程名称.上课时间.课时费.关联老师 使用pickle保存在文件 学生: 学生:用户名.密码.性别.年龄.选课列表[].上课 ...
- Python开发程序:选课系统
本节作业: 选课系统 角色:学校.学员.课程.讲师要求:1. 创建北京.上海 2 所学校2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. ...
随机推荐
- Android学习笔记之Bitmap位图的缩放
位图的缩放也可以借助Matrix或者Canvas来实现. 通过postScale(0.5f, 0.3f)方法设置旋转角度,然后用createBitmap方法创建一个经过缩放处理的Bitmap对象,最后 ...
- Flume Source官网剖析(博主推荐)
不多说,直接上干货! 一切来源于flume官网 http://flume.apache.org/FlumeUserGuide.html Flume Sources Avro Source Thrift ...
- ThinkPHP5.0的安装
ThinkPHP5.0的安装很简单: 1.下载“phpstudy”安装 2.下载thinkphp源文件 3.把thinkphp源文件解压并放到phpstudy目录下的“WWW”目录 4.然后开启服务并 ...
- JVM route
http://www.linuxidc.com/Linux/2013-06/86446.htm
- Altium Designer画异型焊盘的步骤
注:如果要画的是过孔,就需要加入底层的
- MWPhotoBrowser 属性详解 和代理解释
--------0.MWPhoto简单属性解释---------------- MWPhoto *photo = [MWPhoto photoWithURL:[NSURL URLWithString: ...
- netty检测系统工具PlatformDependent
1. 检测jdk版本 @SuppressWarnings("LoopStatementThatDoesntLoop") private static int javaVersion ...
- Android 中AIDL的使用与理解
AIDL的使用: 最常见的aidl的使用就是Service的跨进程通信了,那么我们就写一个Activity和Service的跨进程通信吧. 首先,我们就在AS里面新建一个aidl文件(ps:现在AS建 ...
- 5、regulator系统的概念及测试
概念:Regulator : 电源芯片, 比如电压转换芯片Consumer : 消费者,使用电源的部件, Regulator是给Consumer供电的machine : 单板,上面焊接有Regulat ...
- 【42.86%】【Codeforces Round #380D】Sea Battle
time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...