首页 > 试题广场 >

配比

[编程题]配比
  • 热度指数:2430 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
小 M 要制作一种黑暗饮料,这种饮料的原料有 n 种,编号为 1-n ,已知小 M 的容器最多容纳 v 升材料,黑暗料理的各种原料配比为 a1 : a2 : a3 : ... : an, 每种原料分别有b1,b2,... bn升。 问小 最多可以制作多少升这种饮料。小 使用的各种原料体积和不能超过 v 

数据范围:

输入描述:
输入第一行,两个正整数 n 和 v ,表示原料种类数和容器容积。输入第二行包含 n 个数 a1,a2,a3,...an ,表示 n 种原料的配比。 输入第三行包含 n 个数 b1,b2,b3...bn ,表示小 M 拥有的各种原料数。 (数字间以空格隔开)


输出描述:
输出包含一个非负数,表示小M最多可以制作多少饮料,结果保留4位小数。
示例1

输入

1 100
1
40

输出

40.0000
示例2

输入

2 100
1 1
50 50

输出

100.0000
if __name__ == '__main__':
    import sys
    messages = sys.stdin.readlines()
    n = int(messages[0].strip().split()[0])
    V = int(messages[0].strip().split()[1])
    ai =[]
    bi =[]
    for i in range(n):
        ai.append(int(messages[1].strip().split()[i]))
        bi.append(int(messages[2].strip().split()[i]))

    ratio =[]
    for i in range(n):
        ratio.append(float(bi[i])/float(ai[i]))
    res = min(ratio)*sum(ai)
    if res<V:
        print(format(res,'.4f'))
    else:
        print(format(V,'.4f'))
发表于 2020-05-20 15:46:24 回复(0)