'use strict';

function Main(input) {
    const tmp = input.trim().split('\n');
    let [N, M, K] = tmp[0].split(' ').map((v) => Number(v));
    const A = tmp[1].split(' ').map((v) => Number(v));
    const B = tmp[2].split(' ').map((v) => Number(v));

    let i = 0;
    let j = 0;
    let count = 0;

    while (K > 0) {
        if (i < N && j < M) {
            // Aの本もBの本もまだある
            // 所要時間が少ない方を読む
            if (A[i] > B[j]) {
                K -= B[j];
                j++;
            } else {
                K -= A[i];
                i++;
            }
        } else if (i >= N && j < M) {
            // Aの本はないがBの本はまだある
            // Bの本を読む
            K -= B[j];
            j++;
        } else if (i < N && j >= M) {
            // Bの本はないがAの本はまだある
            // Aの本を読む;
            K -= A[i];
            i++;
        } else {
            // どちらの本もない
            break;
        }
        if (K >= 0) {
            // 所要時間以内なら読めた冊数にカウント
            count++;
        } else {
            break;
        }
    }

    console.log(String(count));

    return;
}
Main(require('fs').readFileSync('/dev/stdin', 'utf8'));