bruceruan 发表于 2021-12-18 21:31:10

python如何实现这种输入、输出呢

本帖最后由 bruceruan 于 2021-12-18 21:59 编辑

python如何实现如下这种输入、输出呢


输入:coins = , amount = 11
输出:3


说明:coin是列表形式,amount是数字,也就是说coin是随机输入的列表,zmount是随机输入的正整数

哪位兄弟指导一下,附上代码,则鱼币奉上,谢谢!

WaitOtherCutely 发表于 2021-12-18 21:31:11

coins, amount = eval(input("请输入列表: ")), int(input("请输入整数: "))
print(amount - sum(coins))

傻眼貓咪 发表于 2021-12-18 21:45:20

本帖最后由 傻眼貓咪 于 2021-12-18 21:49 编辑

def solution(coins: list, amount: int) -> int:
    if amount< 0: return -1
    if amount== 0: return 0
    m = int(1e9)
    for coin in coins:
      res = solution(coins, amount- coin)
      if res >= 0 and res < m:
            m = res + 1
    return m if m < int(1e9) else -1

coins =
amount = 11
res = 0 if amount < 1 else solution(coins, amount)
print(res)

qq1151985918 发表于 2021-12-18 23:22:50

c5 = amount // 5
c2 = amount % 5 // 2
c1 = amount % 5 % 2
n = c5 + c2 + c1

傻眼貓咪 发表于 2021-12-19 14:22:50

qq1151985918 发表于 2021-12-18 23:22
c5 = amount // 5
c2 = amount % 5 // 2
c1 = amount % 5 % 2


楼主问题不够完善,题目是力扣的 322 题:零钱兑换(我之前做过,以上是我的代码)

题目描述:
给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。
计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。
你可以认为每种硬币的数量是无限的。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/coin-change
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

示例 1:
输入:coins = , amount = 11
输出:3
解释:11 = 5 + 5 + 1

示例 2:
输入:coins = , amount = 3
输出:-1

示例 3:
输入:coins = , amount = 0
输出:0

示例 4:
输入:coins = , amount = 1
输出:1

示例 5:
输入:coins = , amount = 2
输出:2

提示:
1 <= coins.length <= 12
1 <= coins <= 2^31 - 1
0 <= amount <= 10^4

槐月余八 发表于 2021-12-19 16:55:45

楼主问一下怎么发悬赏贴啊?
页: [1]
查看完整版本: python如何实现这种输入、输出呢