TÓPICO

Wrong answer (%5) in C

Tonolli_Lucas perguntou 3 years ago

A execução do código com os inputs de exemplo, funciona. Não sei o que está errado... Se alguém souber por favor, me ajude.

include

int main() { int N,Q; int grades[100]; int posicao[100]; int i, j; int aux_g, aux_p; int maior = 0;

while(scanf("%d %d",&N, &Q)!=EOF && N>=1 && Q>=1){

        for(i =0; i < N; i++)
            scanf("%d",&grades[i]);

        for(i = 0; i < Q; i++)
            scanf("%d",&posicao[i]);

        for(i = 0; i < Q; i++){
            aux_g = grades[posicao[i] - 1];
            aux_p = posicao[posicao[i] - 1];
            grades[posicao[i] - 1] = grades[i];
            posicao[posicao[i] - 1]= posicao[i];
            grades[i] = aux_g;
            posicao[i] = aux_p;
        }
        for(i = 0; i < Q; i++)
            if(maior<=grades[i]){
                maior = grades[i];
                j = i;
        }

        aux_g = grades[0];
        grades[0] = maior;
        grades[j] = aux_g;
        maior = 0;

        for(i = 0; i < Q; i++)
            printf("%d\n",grades[i]);
    }
return 0;

}

Lembre de não publicar soluções. Sua publicação pode ser revisada por nossos moderadores.

  • ahmed_farhanur_rashid respondido 9 months ago

    Your code is really hard for me to read, but do this, use bubble sort algorithm to sort your array in a descending order. Then you can continue from there.