洛谷P8742 [蓝桥杯 2021 省 AB] 砝码称重(dp初始)

news/2025/2/19 8:07:29/

        归纳蓝桥杯的这道题总结了一定对于dp的看法,虽然还没看到y总的动态规划,自己搜了搜上学期算法中学到的01背包问题。

        首先动态规划问题最重要的是状态转移方程,将问题抽象成数学问题,列出方程就可以得解。

 

#include<cstdio>
#include<cmath>
using namespace std;
int n,ans,sum,w[101],dp[101][100001];
int main(){scanf ("%d",&n);for(int i=1;i<=n;i++){scanf ("%d",&w[i]);sum+=w[i];}for(int i=1;i<=n;i++){for(int j=sum;j;j--){if(j==w[i])dp[i][j]=1;else if(dp[i-1][j])dp[i][j]=1;else if(dp[i-1][j+w[i]])dp[i][j]=1;else if(dp[i-1][abs(j-w[i])])dp[i][j]=1;}}  for(int i=1;i<=sum;i++)if(dp[n][i])ans++;printf ("%d",ans);return 0;
}

 以后有更深的见解再更新吧,现在大致看懂了dp解题的大概思路了,基本都是两层循环加优化


http://www.ppmy.cn/news/1570638.html

相关文章

334递增的三元子序列贪心算法(思路解析+源码)

文章目录 题目思路解析源码总结题目 思路解析 有两种解法:解法一:动态规划(利用dp找到数组最长递增序列长度,判断是否大于3即可)本题不适用,因为时间复杂度为O(n^2),超时。 解法二:贪心算法:解法如上图,题目要求长度为三,设置第一个元素为长度1的值,是指长度二的…

ZooKeeper作为注册中心有什么问题? ZooKeeper作为注册中心,海量服务同时重启有什么问题?

目录 ZooKeeper作为注册中心存在的问题 性能瓶颈 一致性保证 复杂性 扩展性 单点故障 数据模型限制 社区和生态 安全性 总结 ZooKeeper作为注册中心,海量服务同时重启有的问题 1. ZooKeeper集群压力剧增 2. ZooKeeper Leader节点压力 3. 会话和临时节点管理 4.…

33.日常算法

1.螺旋矩阵 题目来源 给你一个 m 行 n 列的矩阵 matrix &#xff0c;请按照 顺时针螺旋顺序 &#xff0c;返回矩阵中的所有元素。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,2,3],[4,5,6],[7,8,9]] 输出&#xff1a;[1,2,3,6,9,8,7,4,5] class Solution { public:vec…

论软件架构风格论文

摘要: 本人于2023年1月参与广东省某公司委托我司开发的“虚拟电厂”项目,主要负责系统整体架构设计和中间件选型。该项目为新型电力存储、电力调配、能源交易提供一套整体的软件系统。本文以虚拟电厂项目为例,主要讨论架构风格在本项目中的具体应用,主要包括如下,底层架构…

DEEPSEKK GPT等AI体的出现如何重构工厂数字化架构:从设备控制到ERP MES系统的全面优化

随着深度学习&#xff08;DeepSeek&#xff09;、GPT等先进AI技术的出现&#xff0c;工厂的数字化架构正在经历前所未有的变革。AI的强大处理能力、预测能力和自动化决策支持&#xff0c;将大幅度提升生产效率、设备管理、资源调度以及产品质量管理。本文将探讨AI体&#xff08…

C语言:将四个八位无符号数据拼接成32位的float数据

目录 方法一&#xff1a;使用 union 解释 方法二&#xff1a;使用 memcpy 解释 方法三&#xff1a;直接指针类型转换&#xff08;不推荐&#xff09; 综合推荐 使用 union 方法 注意事项 验证代码 在 STM32H7 这样的嵌入式系统中&#xff0c;将四个 8 位无符号数据&am…

一个sql只能有一个order by

ORDER BY 子句在 SQL 中只能出现一次&#xff0c;静态部分和动态部分只能写一个 ORDER BY

模板方法模式(Template)

一、模板方法的定义&#xff1a; 在操作中定义业务逻辑框架&#xff0c;包含业务逻辑的方法就是模板方法&#xff0c;模板方法允许子类在不改变原有业务逻辑的流程下&#xff0c;对某些步骤进行扩展和修改&#xff1b; 是一种基于继承的代码复用技术&#xff0c;是一种类行为…