Submission #767420

#TimeUsernameProblemLanguageResultExecution timeMemory
767420sraeliArchery (IOI09_archery)C11
6 / 100
30 ms1748 KiB
#include <stdio.h>
 
int encontrar_posicao_inicial(int N, int* arqueiros) {
    int minha_classificacao = arqueiros[0]; // Sua classificação é o primeiro elemento do array
 
    // Verificar se você é o melhor ou o pior arqueiro
    if (minha_classificacao == 1 || minha_classificacao == 2 * N) {
        return 1; // Se você for o melhor ou o pior, comece no alvo 1
    }
 
    // Verificar se há um arqueiro com classificação menor que a sua à esquerda
    for (int i = 1; i < 2 * N; i++) {
        if (arqueiros[i] < minha_classificacao) {
            return (i + 1) / 2 + 1; // Comece no alvo correspondente
        }
    }
 
    // Caso contrário, comece no alvo 2
    return 2;
}
 
int main() {
    int N, R;
    
    if (scanf("%d %d", &N, &R) != 2) {
        printf("Erro na leitura de N e R.\n");
        return 1;
    }
 
    int arqueiros[2 * N];
    for (int i = 0; i < 2 * N; i++) {
        if (scanf("%d", &arqueiros[i]) != 1) {
            printf("Erro na leitura da classificação dos arqueiros.\n");
            return 1;
        }
    }
 
    int posicao_inicial = encontrar_posicao_inicial(N, arqueiros);
    printf("%d\n", posicao_inicial);
 
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...