2017.1.13【初中部 】普及组模拟赛C组 maxsum 最大约数和 题解
来源:互联网 发布:删除静态ip ubuntu 编辑:程序博客网 时间:2024/05/20 14:24
原题:
http://172.16.0.132/junior/#contest/show/1363/2
题目描述:
选取和不超过S的若干个不同的正整数,使得所有数的约数(不含它本身)之和最大。
输入:
输入一个正整数S。
输出:
输出最大的约数之和。
样例输入:
11
样例输出:
9
数据范围限制:
对于30%的数据, S<=10;
对于100%的数据, S <=1000。
提示:
样例说明:
取数字4和6,可以得到最大值(1 + 2) + (1 + 2 + 3) = 9。
分析:
这道题就是最简单的01 背包问题。选的数值就是物品的重量,背包的总载重就是s ,每个数的约数和就是物品的价值。题目就是一个很基本的O ( S2)的动态规划。
实现:
#include<cstdio>int n,i,j,k,l,p,max,a[1000],f[1000];int main(){ freopen("maxsum.in","r",stdin);freopen("maxsum.out","w",stdout); scanf("%d",&n); for(i=2;i<=n;i++) for(j=1;j<=i/2;j++) if(i%j==0) a[i]+=j; for(i=1;i<=n;i++) for(j=n;j>=i;j--) if(f[j]<f[j-i]+a[i]) { f[j]=f[j-i]+a[i]; if(f[j]>max) max=f[j]; } printf("%d",max);}
0 0
- 2017.1.13【初中部 】普及组模拟赛C组 maxsum 最大约数和 题解
- OIBH杯第三次模拟赛(普及组)Problem 3 : maxsum 最大约数和
- 2017.1.12【初中部 】普及组模拟赛C组 连续自然数和 题解
- 2017.1.13【初中部 】普及组模拟赛C组 tictac 立体井字棋 题解
- 2017.1.13【初中部 】普及组模拟赛C组 money 最小花费 题解
- 2017.1.13【初中部 】普及组模拟赛C组 excel 电子表格 题解
- 2016.12.30【初中部 】普及组模拟赛C组题解
- 2017.1.12【初中部 】普及组模拟赛C组 简单游戏 题解
- 2017.1.12【初中部 】普及组模拟赛C组 幸运票 题解
- 2017.1.12【初中部 】普及组模拟赛C组 抄书 题解
- 2017.1.15【初中部 】普及组模拟赛C组 小x的数列 题解
- 2017.1.15【初中部 】普及组模拟赛C组 小x的极限 题解
- 2017.1.16【初中部 】普及组模拟赛C组 chicken 题解
- 2017.1.16【初中部 】普及组模拟赛C组 match 题解
- 2017.1.16【初中部 】普及组模拟赛C组 cirs 题解
- 2017.1.16【初中部 】普及组模拟赛C组 wtaxi 题解
- 2017.1.18【初中部 】普及组模拟赛C组 电梯里的爱情 题解
- 2017.1.18【初中部 】普及组模拟赛C组 最佳裁判 题解
- 采用shardbatis在springBoot中实现表的水平拆分,整合swagger,mybatis,shardbatis,pagehelper
- 获取表单信息
- 聊聊高并发系统之降级特技
- TCP/IP、Http、Socket的区别
- linux应用程序(1)---动态链接库
- 2017.1.13【初中部 】普及组模拟赛C组 maxsum 最大约数和 题解
- 聊聊高并发系统之限流特技-1
- zabbix通过简单shell命令监控elasticsearch集群状态
- 一点到其他点的最短路径
- Hadoop集群安装---虚拟机网络配置
- Ubuntu16.04+ROS+Kinect2运行DSO(Direct Sparse Odometry)
- 小D java基础系列1.4 Java三件套&JDK的安装与配置
- sduacm16级寒假热身赛解题报告
- Boxes in a Line UVA - 12657