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

news/2025/2/9 1:30:39 标签: 蓝桥杯, 职场和发展

        归纳蓝桥杯的这道题总结了一定对于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.niftyadmin.cn/n/5845430.html

相关文章

数据结构在 Web 开发中的重要性与应用

数据结构是 Web 开发的基石&#xff0c;直接关系到应用程序的效率、可扩展性和可维护性。 根据实际需求选择合适的数据结构&#xff0c;能够有效优化性能、简化代码&#xff0c;并提升用户体验。 本文将深入探讨 PHP 和 Laravel 中的常用数据结构&#xff0c;并结合实际案例&am…

【C++】 STL -- 算法(一)

【C】 STL – 算法&#xff08;一&#xff09; 文章目录 【C】 STL -- 算法&#xff08;一&#xff09;前言一、函数对象二、谓词三、内建函数对象四、适配器总结 前言 本篇文章将讲到函数对象&#xff0c;谓词&#xff0c;内建函数对象&#xff0c;适配器。 一、函数对象 本质…

用AVFrame + AVPacket 完成accede编码和直接用ffmpeg命令行实现acc编码的对比

在使用 FFmpeg 进行 AAC 音频编码时,可以选择两种方式:通过编程接口(如 AVFrame 和 AVPacket)实现 AAC 编码,或者直接使用 FFmpeg 命令行工具。这两种方式各有特点,适用于不同的场景。以下是对两种方法的详细分析,包括它们的区别、优缺点以及适用场景。 一、通过 AVFram…

【Android开发AI实战】基于CNN混合YOLOV实现多车牌颜色区分且针对车牌进行矫正识别(含源码)

文章目录 引言单层卷积神经网络&#xff08;Single-layer CNN&#xff09;&#x1f4cc; 单层 CNN 的基本结构&#x1f4cc; 单层 CNN 计算流程图像 透视变换矫正车牌c实现&#x1fa84;关键代码实现&#xff1a;&#x1fa84;crnn结构图 使用jni实现高级Android开发&#x1f3…

安卓7以上抓包证书安装

安卓7以上抓包证书安装 fiddler 用户可以直接试试这个文件 前提是要root过了&#xff0c;如果是模拟器就很容易开启 前提&#xff1a;要有openssl工具&#xff0c;在linux一个指令就可以下载了&#xff1a;sudo apt-get install openssl,windons则是在https://www.openssl.org/…

LM Studio 部署本地大语言模型

一、下载安装 1.搜索&#xff1a;lm studio LM Studio - Discover, download, and run local LLMs 2.下载 3.安装 4.更改成中文 二、下载模型(软件内下载) 1.选择使用代理&#xff0c;否则无法下载 2.更改模型下载目录 默认下载位置 C:\Users\用户名\.lmstudio\models 3.搜…

算法日记13:SC41树状数组(区间修改)

一、题目&#xff1a; 二、题解&#xff1a; 在单点修改中&#xff0c;我们用t[i]来维护原数组2.1:在区间修改中&#xff0c;我们将维护原数组的差分数组 接下来&#xff0c;让我们来回顾一些差分的性质 此时&#xff0c;假设我们需要求 a 1 a 2 a 3 a 4 a1a2a3a4 a1a2a3a…

LeetCode:59. 螺旋矩阵 II(模拟 Java)

目录 59. 螺旋矩阵 II 题目描述&#xff1a; 实现代码与解析&#xff1a; 模拟 原理思路&#xff1a; 59. 螺旋矩阵 II 题目描述&#xff1a; 给你一个正整数 n &#xff0c;生成一个包含 1 到 n2 所有元素&#xff0c;且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 ma…