Untitled

 avatar
unknown
plain_text
14 days ago
1.4 kB
3
Indexable
#include <stdio.h>
#include <math.h>


void contarMultiplos(char l, int I, int F, int K) {
    int cont = 0; 

    for (int mult = K; mult <= F; mult += K) {
        if (mult >= I) { 
            cont++;
        }
    }
    printf("%c %d\n", l, cont);
}

int main() {
    int N, I, F;
    scanf("%d", &N); 

    if (N < 1 || N > 26) {
        printf("Erro: N deve estar entre 1 e 26.\n");
        return 1; 
    }

    char letras[N];
    int Ks[N];

    for (int i = 0; i < N; i++) { 
        scanf(" %c %d", &letras[i], &Ks[i]); 

        if (Ks[i] <= 0 || Ks[i] > pow(10,9)) {
            printf("Erro: K deve ser um número positivo e menor ou igual a 10^9.\n");
            return 1; 
        }
    }

    scanf("%d %d", &I, &F);
    
    if (I < 0 || I > pow(10,9) || F < 0 || F > pow(10,9)) {
        printf("Erro: I e F devem estar entre 0 e 10^9.\n");
        return 1; 
    }

    for (int i = 0; i < N - 1; i++) {
        for (int j = i + 1; j < N; j++) {
            if (letras[i] > letras[j]) {
                char armzletra = letras[i];
                letras[i] = letras[j];
                letras[j] = armzletra;

                int armzK = Ks[i];
                Ks[i] = Ks[j];
                Ks[j] = armzK;
            }
        }
    }

    for (int i = 0; i < N; i++) {
        contarMultiplos(letras[i], I, F, Ks[i]); 
    }

    return 0;
}
Editor is loading...
Leave a Comment