const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void (async function () {
    // Write your code here
    let count = 0,
        n = 0,
        k = 0,
        priceArr = [],
        discountArr = [];
    while ((line = await readline())) {
        count++;
        let tokens = line.split(" ");
        let a = parseInt(tokens[0]);
        let b = parseInt(tokens[1]);

        if (count == 1) {
            n = Number(a);
            k = Number(b);
        }
        if (count == 2) {
            priceArr = tokens;
        }
        if (count === 3) {
            let str = line;
            discountArr = str.split("");
        }
    }

    let discountPrice = [];

    priceArr.forEach((item, index) => {
        if (Number(discountArr[index])) {
            discountPrice.push(item * 0.95);
        } else {
            discountPrice.push(item);
        }
    });
    let sortArr = discountPrice.sort((a, b) => {
        return a - b;
    });
    let targetCount = 0;
    sortArr.forEach((item, index) => {
        if (k >= sortArr[index]) {

            targetCount++;
            k = k - item;
        }
    });
            console.log(targetCount);

})();