【洛谷】【动态规划/01背包】P1734 最大约数和
【题目描述:】
选取和不超过S的若干个不同的正整数,使得所有数的约数(不含它本身)之和最大。
【输入格式:】
输入一个正整数S。
【输出格式:】
输出最大的约数之和。
[算法分析:]
01背包,每个数的约数和为其价值,数的大小为其花费
注意1的价值应该为0
[Code:]
#include<iostream>
#include<cstdio>
using namespace std;
int n, v[1001], f[1001];
int work(int x) {
	if(x == 1) return 0;
	int l = x/2, ret = 1;
	for(int i=2; i<=l; ++i)
		if(x % i == 0) ret += i;
	return ret;
}
int main() {
	cin >> n;
	for(int i=1; i<=n; ++i) v[i] = work(i);
	for(int i=1; i<=n; ++i)
		for(int j=n; j>=i; --j)
			f[j] = max(f[j], f[j-i]+v[i]);
	cout << f[n];
}
【洛谷】【动态规划/01背包】P1734 最大约数和的更多相关文章
- 洛谷p1049 01背包
		dp水之旅背包 题目描述 有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30,每个物品有一个体积(正整数). 要求n个物品中,任取若干个装入箱 ... 
- Codeforces 2016 ACM Amman Collegiate Programming Contest A. Coins(动态规划/01背包变形)
		传送门 Description Hasan and Bahosain want to buy a new video game, they want to share the expenses. Ha ... 
- 【洛谷】【动态规划/01背包】P2925 [USACO08DEC]干草出售Hay For Sale
		[题目描述:] 约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草. 顿因有H(1≤H≤5000)包干草,每一包都有它 ... 
- P1060 开心的金明(洛谷,动态规划递推,01背包轻微变形题)
		题目链接:P1060 开心的金明 基本思路: 基本上和01背包原题一样,不同点在于这里要的是最大重要度*价格总和,我们之前原题是 f[j]=max(f[j],f[j-v[i]]+p[i]); 那么这里 ... 
- P1048 采药(洛谷,动态规划递推,01背包原题)
		题目直接放链接 P1048 采药 这题只是01背包+背景故事而已 原题来的 PS:我写了一篇很详细的01背包说明,如果下面ac代码有看不懂的地方可以去看看 对01背包的分析与理解(图文) 下面上ac代 ... 
- P1616 疯狂的采药(洛谷,动态规划递推,完全背包)
		先上题目链接:P1616 疯狂的采药 然后放AC代码: #include<bits/stdc++.h> #define ll long long using namespace std; ... 
- 【题解】洛谷P1445 [Violet]樱花 (推导+约数和)
		洛谷P1445:https://www.luogu.org/problemnew/show/P1445 推导过程 1/x+1/y=1/n! 设y=n!+k(k∈N∗) 1/x+1/(n!+k)=1 ... 
- 洛谷 P1077 摆花 (背包DP)
		题意:有\(n\)种花,每种花有\(a_i\)盆,现在要摆\(m\)盆花,花的种类从\([1,n]\)有序排放,问有多少种方案数. 题解:这题可以借用01背包的思路,感觉更好想一点,我们首先枚举\(n ... 
- 洛谷P2727 01串 Stringsobits
		P2727 01串 Stringsobits 24通过 55提交 题目提供者该用户不存在 标签USACO 难度普及+/提高 提交 讨论 题解 最新讨论 这题的思路是啥啊!!!跪求- 题目背景 考虑 ... 
随机推荐
- SpringBoot(2)  Json框架 -- Jackson返回结果处理
			一.常用框架 阿里 fastjson,谷歌gson等 JavaBean序列化为Json,性能:Jackson > FastJson > Gson > Json-lib 同个结构 Ja ... 
- C++基础知识小记
			最近在帮华为接口人研究自动化部署项目AutoDeploy,把代码发给我了,不过都是用C++写的,自己虽然在大学也学了一学期的C++不过也是很菜鸟,只是学了基本语法,还远未达到实战项目,不管怎么说就是撸 ... 
- /proc文件系统(一):cpuinfo
			0. 前言 /proc 文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间. 它以文件系统的方式为内核与进程提供通信的接口.用户和应用程序可以通过/proc得到系统的信息,并可以改变内核的某 ... 
- jQuery学习(1)猜数字游戏
			jQuery是一个快捷.小型且特征丰富的JavaScript库.它使得HTML文档遍历及操作,事件处理,动画,Ajax等更简洁方便.它通过调用一个简单易用的API,就能在各种浏览器中使用.由于jQ ... 
- Java学习笔记之——类与对象
			1.参数的传递方式 1)值传递 2)引用传递 2.类和对象: (1)类的定义: public class 类名{ 类型 属性1: 类型 属性2: ……… public 返回值类型 方法名1(形参){ ... 
- Java学习笔记之——Java介绍
			1.Java体系: JavaSE:标准版,其他两个体系的基础 JavaEE:企业版 JavaME:微型版,适用于消费类型的微型设备 2.Java三大特性:封装.继承.多态 3.Java的特点:面向对象 ... 
- 阿里CentOS 7 卸载mysql5.6
			查看当前安装mysql情况 rpm -qa|grep -i mysql 执行 yum remove mysql rpm -e mysql-community-release-el7-5.noarch ... 
- 详解promise、async和await的执行顺序
			1.题目和答案 一道题题目:下面这段promise.async和await代码,请问控制台打印的顺序? async function async1(){ console.log('async1 sta ... 
- Python全栈学习_day005作业
			,有如下变量(tu是个元祖),请实现要求的功能 tu = (, , {,,)}, ]) a. 讲述元祖的特性 b. 请问tu变量中的第一个元素 "alex" 是否可被修改? c. ... 
- inheritCombination.js
			// 组合继承 // 其基本思路是使用原型链实现对原型属性和方法的继承,而通过借用构造函数来实现对实例属性的继承 function Person(name){ this.name = name; th ... 
