洛谷 P2834 纸币问题 3-普及-

题目背景

你是一个非常有钱的小朋友。

注意: 本题和《进阶篇》的对应题目,输入格式略有差异。

题目描述

你有 nnn 种面额互不相同的纸币,第 iii 种纸币的面额为 aia_iai 并且有无限张,现在你需要支付 www 的金额,请问有多少种纸币组合能恰好支付金额 www,答案对 109+710^9+7109+7 取模。

输入格式

第一行两个正整数 n,wn,wn,w,分别表示纸币的种数和要凑出的金额。
第二行一行 nnn 个以空格隔开的正整数 a1,a2,…ana_1, a_2, \dots a_na1,a2,an 依次表示这 nnn 种纸币的面额。

输出格式

一行一个整数,表示能恰好凑齐面额 www 的纸币组合数量。

输入输出样例 #1

输入 #1

6 15
1 5 10 20 50 100

输出 #1

6

输入输出样例 #2

输入 #2

3 15
1 5 11

输出 #2

5

说明/提示

对于 40%40\%40% 的数据,满足 n≤10n\le 10n10w≤100w\le 100w100
对于 100%100\%100% 的数据,满足 1≤n≤1031\le n\le 10^31n1031≤ai,w≤1041\le a_i , w\le 10^41ai,w104

其实小朋友并不有钱。

solution

代码

#include<iostream>
#include "unordered_map"
#include "unordered_set"
#include "stack"
#include "queue"
#include "cstring"
#include "algorithm"using namespace std;
const int N = 1e3 + 5, INF = 1e4, M = 1e4 + 5, mod = 1e9 + 7;int a[N], n, w, f[M], g[M];int main() {cin >> n >> w;for (int i = 0; i < n; i++) cin >> a[i];f[0] = 1;for (int i = 0; i < n; i++) {for (int j = a[i]; j <= w; j++) {f[j] = (f[j] + f[j - a[i]]) % mod;}}cout << f[w];return 0;
}

结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/2805.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++常见面试题-5.数据结构

五、数据结构 5.1 线性数据结构数组和链表的区别&#xff1f;数组&#xff08;Array&#xff09;&#xff1a; 存储方式&#xff1a;连续的内存空间&#xff1b;访问方式&#xff1a;支持随机访问&#xff0c;通过索引直接访问元素&#xff0c;时间复杂度为O(1)&#xff1b;插入…

Node.js 在 Windows Server 上的离线部署方案

Node.js 在 Windows Server 上的离线部署方案 离线部署的核心是提前准备所有依赖资源&#xff08;避免在线下载&#xff09;&#xff0c;并通过本地配置完成服务搭建&#xff0c;整体分为「依赖准备」「环境配置」「项目部署」「服务注册」4个阶段。 一、提前准备离线资源&am…

18.web api 9

3.M端事件4.js插件

母猪姿态转换行为识别:计算机视觉与行为识别模型调优指南

> 在现代智能化养殖中,母猪姿态识别是健康监测的关键技术。本文将带你从0到1构建高精度母猪姿态识别系统,准确率可达95%以上! ## 一、为什么母猪姿态识别如此重要? 母猪的行为姿态是其健康状况的重要指标: - **站立姿态**:可能表示发情期或进食需求 - **侧卧姿态**:…

Unity进阶--C#补充知识点--【Unity跨平台的原理】Mono与IL2CPP

来源于唐老狮的视频教学&#xff0c;仅作记录和感悟记录&#xff0c;方便日后复习或者查找 一.跨平台基本原理 知识回顾&#xff1a; ①在之前我们已经知道了跨语言的原理是.Net体系下定义了这些语言需要遵守的工业标准CLI。因此实现了面向.Net的语言都可以被编译转化成统一规…

LeetCode:无重复字符的最长子串

目录 解题过程: 描述: 分析条件: 正确解题思路: 通过这道题可以学到什么: 解题过程: 描述: 3. 无重复字符的最长子串 提示 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长 子串 的长度。 示例 1: 输入: s "abcabcbb" 输出: 3 解释: 因为…

JUC读写锁

文章目录一、读写锁概述1.1 核心目标1.2 核心思想1.3 关键规则与保证1.4 核心组件二、使用示例2.1 采用独占锁的姿势读、写数据2.2 使用读写锁读、写数据2.3 锁降级 **&#xff08;Lock Downgrading&#xff09;**三、应用场景3.1 缓存系统【高频读、低频更新】3.2 配置中心【配…

docker compose再阿里云上无法使用的问题

最原始的Dokcerfile # 使用官方Python 3.6.8镜像 FROM python:3.6.8-slimWORKDIR /app# 复制依赖文件 COPY requirements.txt .RUN pip install --upgrade pip # 检查并安装依赖&#xff08;自动处理未安装的包&#xff09; RUN pip install --no-cache-dir -r requirements.tx…

【运维进阶】LNMP + WordPress 自动化部署实验

LNMP WordPress 自动化部署实验 一、实验目标 通过 Ansible 自动化工具&#xff0c;在目标服务器&#xff08;lnmp 主机组&#xff09;上搭建 LNMP 架构&#xff08;Linux 系统 Nginx 网页服务器 MariaDB 数据库 PHP 脚本语言&#xff09;&#xff0c;并部署 WordPress 博…

豆包 Java的23种设计模式

Java的23种设计模式是软件开发中常用的设计思想总结&#xff0c;根据用途可分为三大类&#xff1a;创建型、结构型和行为型。 一、创建型模式&#xff08;5种&#xff09; 用于处理对象创建机制&#xff0c;隐藏创建逻辑&#xff0c;使程序更灵活。 单例模式&#xff1a;保证一…

RISC-V汇编新手入门

有空就更。一、基础核心概念&#xff1a;什么是汇编语言&#xff1f;汇编语言是直接对应 CPU 指令的低级编程语言&#xff0c;每一行汇编代码基本对应一条 CPU 能直接执行的指令。相比 C 语言等高级语言&#xff0c;汇编更贴近硬件&#xff0c;能直接操作 CPU 的寄存器、内存和…

[每周一更]-(第155期):Go 1.25 发布:新特性、技术思考与 Go vs Rust 竞争格局分析

作为一名 Go 研发工程师&#xff0c;我一直关注 Go 语言的演进。2025 年 8 月 12 日&#xff0c;Go 团队发布了 Go 1.25 版本&#xff0c;这是继 Go 1.24 之后的又一重要更新。 这个版本聚焦于工具链优化、运行时改进和实验性功能引入&#xff0c;没有引入破坏性语言变化&#…