2024.6.15
2024.6.15 【夜幽幽,月优优,曲悠悠,吾忧忧。】
Saturday 五月初十
<theme = oi-“DP”>
看几道DP基础题,
巩固一下DP思路和基础
Coin Combinations I
//2024.6.15
//by white_ice
//Coin Combinations I CSES - 1635
#include<bits/stdc++.h>
#include"fopen.cpp"
using namespace std;
#define itn long long
#define int long long
constexpr int oo = 102;
constexpr int mod = 1000000007;
constexpr int op = 1000006;int n,m;
itn st[oo];itn f[op];signed main(){fre();ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin >> n >> m ;for (itn i=1;i<=n;i++)cin >> st[i];f[0] = 1;for (itn i=1;i<=m;i++){for (itn j=1;j<=n;j++){if (i-st[j]>=0){f[i] += f[i-st[j]];}} f[i] %= mod;}cout << f[m];return 0;
}
依次遍历每一个总价值i如果比硬币价值大,
就加上f[i-c[j]]种方式
Coin Combinations II
//2024.6.15
//by white_ice
//Coin Combinations II CSES - 1636
#include<bits/stdc++.h>
//#include"fopen.cpp"
using namespace std;
#define itn int
constexpr int oo = 102;
constexpr int op = 1000006;
constexpr int mod = 1000000007;itn n,x;
itn st[oo];itn f[op];signed main(){//fre();ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);cin >> n >> x;for (itn i=1;i<=n;i++)cin >> st[i];f[0] = 1;for (itn i=1;i<=n;i++){for (int j=st[i];j<=x;j++){f[j] += f[j-st[i]];f[j] %= mod;}}cout << f[x];return 0;
}
从枚举每个硬币的价值开始,
加上从此硬币能到的总价值中差的价值的组成方式
(有点绕
注意以上两种题的区别,
有序和无序的DP写法中主要就是遍历顺序的改变
Minimizing Coins
//2024.6.15
//by white_ice
//Minimizing Coins CSES - 1634
#include<bits/stdc++.h>
//#include"fopen.cpp"
using namespace std;
#define itn int
constexpr int oo = 102;
constexpr int op = 1000006;itn n,m;
itn c[oo]; int f[op];signed main(){//fre();ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);cin >> n >> m;memset(f,0x3f3f3f3f,sizeof(f));for (itn i=1;i<=n;i++)cin >> c[i];sort(c+1,c+n+1);f[0] = 0;for (int i=1;i<=m;i++){for (int j=1;j<=n;j++){if (i<c[j])break;f[i] = min(f[i],f[i-c[j]]+1);}}cout << (f[m]==0x3f3f3f3f?-1:f[m]);return 0;
}
依旧是枚举每个硬币的价值
取当前硬币以外组成的最小方式比较。
相关文章:
2024.6.15
2024.6.15 【夜幽幽,月优优,曲悠悠,吾忧忧。】 Saturday 五月初十 <theme oi-“DP”> 看几道DP基础题, 巩固一下DP思路和基础 Coin Combinations I //2024.6.15 //by white_ice //Coin Combinations I CSES - 1635 #i…...
堆栈溢出的攻击 -fno-stack-protector stack smash 检测
在程序返回的一条语句堆栈项目处,用新函数的起始地址覆盖,将会跳转到执行新函数。 现在系统对这个行为做了判断,已经无法实施这类攻击或技巧。 1,测试代码 #include <stdio.h> void cc() {printf("I am cc( )\n"…...
掌握特劳特定位理论核心,明晰企业战略定位之重
在当今瞬息万变的市场环境中,企业战略定位的重要性日益凸显。它不仅是企业在激烈竞争中保持优势的关键,更是企业实现长期可持续发展的基石。 哈佛大学战略学教授迈克尔波特(Michael Porter)指出战略就是形成一套独具的运营活动&a…...
RAGFlow 学习笔记
RAGFlow 学习笔记 0. 引言1. RAGFlow 支持的文档格式2. 嵌入模型选择后不再允许改变3. 干预文件解析4. RAGFlow 与其他 RAG 产品有何不同? 5. RAGFlow 支持哪些语言? 6. 哪些嵌入模型可以本地部署? 7. 为什么RAGFlow解析文档的时间比…...
使用Docker-Java监听Docker容器的信息
使用Docker-Java监听Docker容器的信息 Docker作为一种轻量级的容器化平台,极大地方便了应用的部署与管理。然而,在实际使用过程中,我们常常需要对运行中的容器进行监控,以确保其健康状态,并能及时响应各种异常情况。本…...
Spring Boot + Mybatis Plus实现登录注册
Spring Boot 实现登录注册 1. 注册 业务逻辑 客户端输入注册时需要的用户参数,比如:账户名、密码、确认密码、其他服务端接收到客户端的请求参数进行校验,然后判断是否有误,有误的地方就将错误信息抛出将密码进行加密之后存储到…...
IDEA创建web项目
IDEA创建web项目 第一步:创建一个空项目 第二步:在刚刚创建的项目下创建一个子模块 第三步:在子模块中引入web 创建结果如下: 这里我们需要把这个目录移到main目录下,并改名为webapp,结果如下 将pom文件…...
二手物品交易系统的设计
管理员账户功能包括:系统首页,个人中心,管理员管理,商家管理,用户管理,商品管理,用户咨询管理 商家账户功能包括:系统首页,个人中心,商品管理,用…...
探索大数据在信用评估中的独特价值
随着我国的信用体系越来越完善,信用将影响越来越多的人。现在新兴的大数据信用和传统信用,形成了互补的优势,大数据信用变得越来越重要,那大数据信用风险检测的重要性主要体现在什么地方呢?本文将详细为大家介绍一下,…...
MFC基础学习应用
MFC基础学习应用 1.基于对话框的使用 左上角为菜单键(其下的关于MFC主要功能由IDD_ABOUTBOX决定) 附图 右下角为按钮(基本功能由IDD_DIALOG决定,添加按钮使用由左上角的工具箱完成) 附图 2.自行添加功能与按钮//功能代码 void CMFCApplication4Dlg:…...
Gradle实现类似Maven的profiles功能
版本说明 GraalVM JDK 21.0.3Gradle 8.7Spring Boot 3.2.5 目录结构 指定环境打包 application.yml/yaml/properties 执行 bootJar 打包命令前要先执行 clean【其它和 processResources 相关的命令也要先执行 clean】,否则 active 值不会变! spring…...
【强化学习】gymnasium自定义环境并封装学习笔记
【强化学习】gymnasium自定义环境并封装学习笔记 gym与gymnasium简介gymgymnasium gymnasium的基本使用方法使用gymnasium封装自定义环境官方示例及代码编写环境文件__init__()方法reset()方法step()方法render()方法close()方法 注册环境创建包 Package(最后一步&a…...
TLE9879的基于Arduino调试板SWD刷写接口
官方的Arduino评估板,如下图所示: 如果你有官方的调试器,应该不用关注本文章,如下图连接就是: 如果,您和博主一样需要自己飞线的话,如下图所示:PCB的名称在右边整理,SWD的…...
基于 Delphi 的前后端分离:之五,使用 HTMX 让页面元素组件化之面向对象的Delphi代码封装
前情提要 本博客上一篇文章,描述了使用 Delphi 作为后端的 Web Server,前端使用 HTMX 框架,把一个开源的前端图表 JS 库,进行了组件化。 上一篇文章仅仅是描述了简单的前端代码组件化的可能性,依然是基于前端库的 JS…...
讲透计算机网络知识(实战篇)01——计算机网络和协议
一、计算机网络和协议 1、网络和互联网络 1.1 网络、互联网、Internet 用交换机、集线器连接在一起的计算机构成一个网络。 用路由器连接多个网络,形成互联网。 全球最大的互联网:Internet。 1.2 网络举例 家庭互联网 图中的无线拨号路由器既是路由…...
8个宝藏APP,个个都牛逼哈拉!
AI视频生成:小说文案智能分镜智能识别角色和场景批量Ai绘图自动配音添加音乐一键合成视频https://aitools.jurilu.com/ 目前win7已经逐渐淡出人们的视野,大部分人都开始使用win10,在日常工作和使用中,创客们下载神奇的软件能大幅提…...
使用docker构建java应用
1、docker简介 Docker是一个开源的容器化平台,可以帮助开发人员将应用程序及其依赖项打包成一个可移植的容器。容器化是一种轻量级的虚拟化技术,可以使应用程序在不同的操作系统和环境中具有一致的运行方式。 使用Docker带来的好处包括: 简…...
Oracle 存储过程
Oracle存储过程 创建存储过程 CREATE OR REPLACE PROCEDURE UPDATE_EMPLOYEE_SALARY(p_employee_id IN NUMBER,p_employee_salary IN NUMBER )AS BEGINUPDATE employeesSET salary p_employee_salaryWHERE employee_id p_employee_id;COMMIT;EXCEPTIONWHEN NO_DATA_FOUND T…...
下载站名文件
自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 得到了请求地址与请求参数后,可以发现请求参数中的出发地与目的地均为车站名的英文缩写。而这个英文缩写的字母是通过输入中文车站名转换…...
345453
38744...
智能车竞赛光电组核心技术解析:从图像处理到PID控制
1. 项目概述:从“智能车”到“光电组”的硬核竞技如果你对嵌入式、自动控制或者机器人竞赛感兴趣,那么“智能车竞赛”这个名字你一定不陌生。它远不止是几个大学生拿着遥控车在赛道上跑圈那么简单,而是一个融合了机械、电子、控制、算法和计算…...
GESP6级C++考试语法知识(二十一、深度优先搜索(一、DFS 一条路走到黑))
第一课《迷宫探险队》——DFS 到底是什么?🌟一、故事开始:勇敢的小骑士1、很久很久以前,在算法王国里,有一座神秘的迷宫城堡。2、城堡里面:有墙壁有陷阱有死路还有一颗“黄金宝石”✨3、国王说:…...
51单片机入门实战:用Keil+Proteus做个带蜂鸣器报警的按键计数器(附完整代码)
51单片机实战:从零构建带蜂鸣器报警的按键计数器 项目背景与核心功能 对于刚接触51单片机的开发者来说,独立完成一个小型综合项目往往能带来巨大的成就感。这次我们要实现的是一个结合按键计数、数码管显示和蜂鸣器报警的完整系统。当用户按下按键时&a…...
告别VS Code!用CLion 2024.3 + CUDA 12.1搭建高效GPU开发环境(附CMake配置避坑指南)
CLion 2024.3 CUDA 12.1:打造专业级GPU开发环境的终极指南 在GPU加速计算领域,开发者长期面临一个两难选择:是使用功能全面但笨重的Visual Studio,还是选择轻量灵活但功能有限的VS Code?JetBrains CLion 2024.3的出现…...
VisDrone2019数据集转换COCO格式实战:手把手教你用Python脚本搞定YOLOX训练数据准备
VisDrone2019数据集转换COCO格式全流程解析:从数据清洗到YOLOX适配 无人机视角下的目标检测一直是计算机视觉领域的特殊挑战。VisDrone2019作为该领域最具代表性的开源数据集,包含了10个类别、超过26万张标注图像,但原始数据格式与主流框架的…...
2026年计算机专业就业现状,不想35岁被淘汰?网络安全或许是程序员的最佳转型方向!
计算机专业虽进入分化阶段,但网络安全人才缺口达300万,高端领域供不应求。高校扩招与市场需求脱节导致供需失衡,未来"计算机行业"的复合型人才更具竞争力。建议早做规划,构建"T型能力体系",掌握前…...
NoSQL数据库原理与应用
NoSQL数据库原理与应用 1. 技术分析 1.1 NoSQL概述 NoSQL数据库是对传统关系型数据库的补充: NoSQL类型文档型: MongoDB键值型: Redis列族型: Cassandra图数据库: Neo4jNoSQL特点:非关系型分布式水平扩展1.2 NoSQL vs 关系型 对比维度数据模型: 灵活vs结构化一致性:…...
别再乱用pt和px了!LaTeX排版中em、mm、pt单位选哪个?看完这篇实战避坑指南
LaTeX排版单位选择实战指南:从em到pt的精准避坑策略 当你熬夜完成的论文在导师的打印机上变成一团乱码,当精心设计的报告在不同设备上显示得七零八落——这些悲剧往往源于一个被忽视的细节:长度单位的选择。LaTeX作为科研排版的事实标准&…...
从理论到PCB:20dB耦合度的宽带定向耦合器设计全流程与性能测试
从理论到PCB:20dB耦合度的宽带定向耦合器设计全流程与性能测试 在射频电路设计中,定向耦合器作为关键的无源器件,其性能直接影响整个系统的信号监测、功率分配和反射测量精度。特别是工作于1-4GHz频段、耦合度为20dB的宽带定向耦合器…...
OpenClaw从入门到应用——工具(Tools):技能配置
通过OpenClaw实现副业收入:《OpenClaw赚钱实录:从“养龙虾“到可持续变现的实践指南》 所有与技能相关的配置都位于 ~/.openclaw/openclaw.json 中的 skills 字段下。 {skills: {allowBundled: ["gemini", "peekaboo"],load: {ext…...
