Removendo vogais de uma sequência de entrada usando um loop

Eu preciso que minha saída tenha apenas 5 caracteres, NÃO contando as vogais removidas. Atualmente, meu código está contando o comprimento da entrada e retornando esse número menos as vogais. Isso pode ser confuso. Se eu inserir "idontthinkso", ele retornará apenas "dnt" em vez do que eu quero que seja impresso "dntth". Btw, eu não tenho permissão para usar Stringbuilder ou algo assim, apenas um loop, então perdoe o código. Como posso consertar isso? Aqui está o meu código:

import java.util.Scanner;

public class TweetCompressor {
    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);
        String s = "";
        System.out.println("Type a tweet: ");
        String input = keyboard.nextLine();
        int f = 0;
        int tweetLengthAllowed = 5;

        for (int i = 0; i < tweetLengthAllowed; i++) {
            char c = input.charAt(i);
            if (c == 'a' ||
                    c == 'e' ||
                    c == 'i' ||
                    c == 'o' ||
                    c == 'u' ||
                    c == 'A' ||
                    c == 'E' ||
                    c == 'I' ||
                    c == 'O' ||
                    c == 'U') {
                f = 1;
            } else {
                s = s += c;
                f = 0;
            }
        }
        System.out.println(s);
    }
}

questionAnswers(3)

yourAnswerToTheQuestion