我的a了(每次取1或者买全部材料做冰淇淋能做多少)
#coding=utf-8
# 本题为考试多行输入输出规范示例,无需提交,不计分。
import sys
if __name__ == "__main__":
    # 读取第一行的n
    line = sys.stdin.readline().strip()
    # 把每一行的数字分隔后转化成int列表
    nm = list(map(int, line.split()))
    n = nm[0]
    m = nm[1]
    line = sys.stdin.readline().strip()
    exist = list(map(int, line.split()))
    line = sys.stdin.readline().strip()
    money = list(map(int, line.split()))

    total_money = sum(money)

    ans = 0
    min_num = min(exist)
    ans += min_num

    exist_buf = [i - min_num for i in exist]
    exist = exist_buf

    while m > 0:
        min_num = max(1, m // total_money)
        ans += min_num
        need = [i - min_num for i in exist]
        need_money = 0
        for i in range(n):
            exist_buf[i] = max(exist[i] - min_num, 0)
            if need[i] < 0:
                need_money += abs(need[i]) * money[i]

            exist = exist_buf
        m -= need_money
    if m < 0:
        ans -= 1
    print(ans)