又是惨烈的一天

第一题

多重背包。二进制拆分即可。

#include <stdio.h>
#define max(a,b) ((a)>(b)?(a):(b))
int n,m,i,j,k,l,a,b;
int d[11][11];
// s: time w: value
int s[10000],w[10000],pn,f[1000000];
int main(){
freopen("medic.in","r",stdin);
freopen("medic.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=0;i<n;++i){
scanf("%d%d",&a,&b);
++d[a][b];
}
for(i=1;i<11;++i){
for(j=1;j<=11;++j){
k=1;
while(d[i][j]){
if(d[i][j]>k){
s[pn]=i*k,w[pn]=j*k,++pn;
d[i][j]-=k;
k<<=1;
}else{
s[pn]=i*d[i][j],w[pn]=j*d[i][j],++pn;
d[i][j]=0;
}
}
}
}
for(i=0;i<pn;++i){
for(j=m;j>=s[i];--j){
f[j]=max(f[j],f[j-s[i]]+w[i]);
}
}
printf("%d\n", f[m]);
return 0;
}

第二题

先将数读入为素因子里2和5分别的个数,然后求出一路乘到底最少的2和5的个数,取其小者。

(DP)

#include <cstdio>
#define min(a,b) ((a)<(b)?(a):(b))
int m,n,i,j,k,f2[2000][2000],f5[2000][2000],fmin[2000][2000],d2[2000][2000],d5[2000][2000],t;
inline int countbit(int n){
t=0;
while(!(k&1)) k>>=1,++t;
return t;
}
inline int countf(int n){
t=0;
while(!(k%5)) k/=5,++t;
return t;
}
int main(){
freopen("matrix.in","r",stdin);
freopen("matrix.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=0;i<n;++i){
for(j=0;j<m;++j){
scanf("%d",&k);
d2[i][j]=countbit(k);
d5[i][j]=countf(k);
// printf("(2: %d | 5: %d) ",d2[i][j],d5[i][j]);
if(!i){
f2[i][j]=f2[i][j-1]+d2[i][j];
f5[i][j]=f5[i][j-1]+d5[i][j];
}else if(!j){
f2[i][j]=f2[i-1][j]+d2[i][j];
f5[i][j]=f5[i-1][j]+d5[i][j];
}else{
f2[i][j]=min(f2[i-1][j],f2[i][j-1])+d2[i][j];
f5[i][j]=min(f5[i-1][j],f5[i][j-1])+d5[i][j];
}
}
printf("\n");
}
printf("%d\n",min(f2[n-1][m-1],f5[n-1][m-1]));
return 0;
}

第三题

递推。太懒不写。

07 day 2的更多相关文章

  1. iOS系列 基础篇 07 Action动作和输出口

    iOS系列 基础篇 07 Action动作和输出口 目录:  1. 前言及案例说明 2. 什么是动作? 3. 什么是输出口? 4. 实战 5. 结尾 1. 前言及案例说明 上篇内容我们学习了标签和按钮 ...

  2. javaSE基础07

    javaSE基础07 一.static静态修饰符 用了static修饰的变量就会变成共享的属性,只会初始化一次,在内存中只存在一个,并且每个对象都可以访问,存放在方法区(数据共享区) 1.1 stat ...

  3. 《HelloGitHub月刊》第07期

    最近工作上的事比较多,<HelloGitHub>月刊第07期拖到月底才发. 本期月刊对logo和月刊的排版进行了优化,不知道大家的反馈如何,还望大家多多反馈,让<HelloGitHu ...

  4. Python array,list,dataframe索引切片操作 2016年07月19日——智浪文档

    array,list,dataframe索引切片操作 2016年07月19日——智浪文档 list,一维,二维array,datafrme,loc.iloc.ix的简单探讨 Numpy数组的索引和切片 ...

  5. 驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址

    驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址 最近重新看了乾龙_Heron的<ARM 上电启动及 Uboot 代码分析>(下简称<代码分析>) ...

  6. NPOI 导入导出excel 支持 03 07

    因为微软的office成本太高了,所以开发项目的时候电脑上没安装office,而是安装了wps.但开发语言用的是C#,所以直接调用微软的office组件是很方便的,但一方面慢,一方面成本高,所以从网上 ...

  7. Archlinux 2015.07.01 和 Windows7 双系统 安装教程

    提前在windows7下给Archlinux预留一个分区,大小最好在20G以上(根据自己硬盘情况分配). 第一步,安装前的准备 从arch官网下载最新的ISO文件archlinux-2015.07.0 ...

  8. Java虚拟机JVM学习07 类的卸载机制

    Java虚拟机JVM学习07 类的卸载机制 类的生命周期 当Sample类被加载.连接和初始化后,它的生命周期就开始了. 当代表Sample类的Class对象不再被引用,即不可触及时,Class对象就 ...

  9. AC日记——有趣的跳跃 openjudge 1.6 07

    07:有趣的跳跃 总时间限制:  1000ms 内存限制:  65536kB 描述 一个长度为n(n>0)的序列中存在“有趣的跳跃”当前仅当相邻元素的差的绝对值经过排序后正好是从1到(n-1). ...

  10. AC日记——配对碱基链 openjudge 1.7 07

    07:配对碱基链 总时间限制:  1000ms 内存限制:  65536kB 描述 脱氧核糖核酸(DNA)由两条互补的碱基链以双螺旋的方式结合而成.而构成DNA的碱基共有4种,分别为腺瞟呤(A).鸟嘌 ...

随机推荐

  1. 年前辞职-WCF入门学习(4)

    前言 上一篇的学习中碰到一个问题,用地址http://localhost:8080/mex 访问元数据的时候一直提示400 bad request 错误,因为时间太晚了,查了好几遍代码,也没有发现问题 ...

  2. JavaScript基础系列目录(2014.06.01~2014.06.08)

    下列文章,转载请亲注明链接出处,谢谢! 链接地址: http://www.cnblogs.com/ttcc/tag/JavaScript%20%E5%9F%BA%E7%A1%80%E7%9F%A5%E ...

  3. Ibatis学习总结7--SqlMapClient 执行 SQL 语句

    SqlMapCient 类提供了执行所有 mapped statement 的 API.这些方法如下: public int insert(String statementName, Object p ...

  4. IntelliJ IDEA 设置 编辑器字体大小

    1,打开File->settings 2,在Edit->colors->Fonts下创建新字体 保存即可.

  5. grunt安装_

    grunt_构建WEBJS程序框架,. package.json是文件配置 ====〉〉〉〉 在Gruntfile.js里面会引用到. //目录下直接放node的东西 ,比如: node_module ...

  6. zoj3890 BFS

    就是搜. #include<stdio.h> #include<string.h> #include<queue> using namespace std; #de ...

  7. Ajax、反向Ajax和WebSocket 概念

    Ajax 异步的JavaScript和XML(Asynchronous JavaScript and XML,Ajax),一种可通过JavaScript来访问的浏览器功能特性,其允许脚本向幕后的网站发 ...

  8. Spring-MVC流程图

    Spring MVC工作流程图 图一 图二  Spring工作流程描述       1. 用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获:   ...

  9. selenium常见的疑问和问题

    .确认(verifation)和断言(assert)有什么区别?  确认:当测试中的一个用例存在错误时,系统将会继续运行这些测试  断言:当测试中的一个用例存在错误时,系统将会退出当前用例  总而言之 ...

  10. php复习

    最近要用php,好久不用感觉手生.抓起<零基础学PHP>一书复习了下,顺带学了smarty模板语言,然后到慕课网看了些php中级视频教程,这里记录下. php最基本的文件上传 不用任何第三 ...