Добавление строки к строке до определённого (бесконечно большого) числа и нахождение в ней символа 'а'. Как решить?
Вам не нужно конкатенировать миллиарды символов, вы можете посчитать количество повторов в исходной строке, а затем умножить это число на количество полных повторов строки + остаток
static long repeatedString(String s, long n) {
        /* Кол-во повторов в исходной строке */
        int rep = (int) s.toLowerCase()
                .chars()
                .filter(c -> c == 'a').count();

        /* Кол-во циклов, в которых исходная строка будет полностью скопирована */
        long cycles = (n / s.length()) - 1;

        /* Кол-во повторов в остаточной строке, которой не хватило на полный цикл */
        int remainder = (int) s.toLowerCase()
                .substring(0, (int) n % s.length())
                .chars()
                .filter(c -> c == 'a').count();

        return rep * cycles + remainder + rep;
}
я отвечу на этот вопрос вопросом. сколько потребуется памяти, чтобы повторить строку "udjlitpopjhipmwgvggazhuzvcmzhulowmveqyktlakdufzcefrxufssqdslyfuiahtzjjdeaxqeiarcjpponoclynbtraaawrps" 872514961806 раз?