python换零钱_322.零钱兑换-python
动态规划问题,稍后更新思路
class Solution(object):
def coinChange(self, coins, amount):
"""
:type coins: List[int]
:type amount: int
:rtype: int
"""
INF = float('inf')
dp = []
N = len(coins)
for _ in range(N):
tmp = [INF] * (amount+1)
tmp[0] = 0
dp.append(tmp)
for j in range(1, amount+1):
if j >= coins[0] and dp[0][j-coins[0]] != INF:
dp[0][j] = dp[0][j-coins[0]] + 1
for i in range(1, N):
for j in range(1, amount+1):
if j >= coins[i]:
dp[i][j] = min(dp[i - 1][j], dp[i][j-coins[i]] + 1)
else:
dp[i][j] = dp[i - 1][j]
return dp[len(coins)- 1][amount] if dp[N-1][amount] != INF else -1
进行空间压缩:
class Solution(object):
def coinChange(self, coins, amount):
"""
:type coins: List[int]
:type amount: int
:rtype: int
"""
INF = float('inf')
dp = [0] + [INF]*amount
N = len(coins)
for i in range(amount+1):
for j in range(N):
if i >= coins[j]:
dp[i] = min(dp[i], dp[i-coins[j]]+1)
return dp[amount] if dp[amount] <= amount else -1
python换零钱_322.零钱兑换-python相关推荐
- python换硬币_Python 硬币兑换问题
硬币兑换问题: 给定总金额为A的一张纸币,现要兑换成面额分别为a1,a2,....,an的硬币,且希望所得到的硬币个数最少. # 动态规划思想 dp方程式如下 # dp[0] = 0 # dp[i] ...
- python换图片_详解Python给照片换底色(蓝底换红底)
现在网上出现了很多在线换底色的网页版工具是这么做的呢?其实用Python就可以实现. 环境要求 Python3 numpy函数库 opencv库 安装 下载适应版本的numpy函数库,我电脑是WIN1 ...
- python换成中文版_在python中如何将“\”替换为“/”?
由于从另一个不可修改的源接收变量,因此字符串已经被转义.在 现在,对于您的字符串,有两个地方会误解字符:\v和{}.在>>> path = 'V:\PRODUCTIONS\SC_02 ...
- python在手机上如何模拟登录_用 Python 换个姿势「模拟登录」
原标题:用 Python 换个姿势「模拟登录」 作者:librauee 今天给大家介绍Python一个非常有意思的库PyUserInput,它集成了PyMouse和PyKeyboard这俩模块,能够模 ...
- python换发型_初学Python的一些细节
一.python的数据类型 1.python的基本数据类型包括数值数据类型和字符串数据类型:基本数据类型的特点是不允许改变,如果改变基本数据类型的值,会导致内存的重新分配. int 整形 二进制 a ...
- python字符串去掉空行_从python中的字符串中删除空格
python字符串去掉空行 如何在python中删除字符串中的空格 (How to remove whitespaces in a string in python) str.lstrip()str. ...
- python 等号报错_Python学习----Python基础
Python基础 一.数据类型和变量 1.在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量. 例如: a =520# a是整数prin ...
- python官网下载安装教程-Python和Anoconda和Pycharm安装教程
简介 Python是一种跨平台的计算机程序设计语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的.大型项目的开发. ...
- python软件是免费的吗-Python编程软件下载
Thonny是一款Python编程工具,非常适合Python的初学者使用,简单易操作,有错误的部分会直接显示出来,对于一些难懂的部分会给予解释,非常的人性化,需要的朋友欢迎下载使用. 软件优势 初始布 ...
最新文章
- “口碑营销”产品模型推测与分析
- REST API 支持方式
- Android 进阶 Fragment 介绍和使用 (一)
- Codeforces 486D D. Valid Sets
- c语言程序设计现代方法第二版 第10章程序设计题3题,自己编写的一个程序
- (转)计算几何模板 - kuangbin
- 更换mysql_安利给你,关于MySQL字符集乱码与解决方案
- CentOS切换运行级别 图形模式/命令行模式
- java文件读取的几个操作-1
- LabVIEW开发实战:Labview简介
- C-V2X通信架构中,PC5接口和Uu接口的区别是什么?
- java 重载的特征_Java中方法的重载详解
- 字体外面怎么加边框_教您使用html代码给文字加边框!
- Vue3中数据更新函数effect的实现
- 腾讯收入证明泄漏,税后250万,月均20万...
- 重磅!清华大学首个原创虚拟美女学生,“华智冰”唱歌好听到爆
- 寻找鲁菜——美食江山寻味记之三·胶东人家
- 花了500学的seo课程教程笔记公布
- 如何解决苹果公司开发者账号重设手机号的问题
- 在跑SC-LEGO-LOAM时报错[pcl::KdTreeFLANN::setInputCloud] Cannot create a KDTree with an empty input cloude