Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda com exercício SPOJ


tassinhu

Pergunta

Estou tentando resolver esse exercício do SPOJ

http://br.spoj.com/problems/ARQUEOMG/

ele da tudo certo até o momento de saída 3, exemplo:

Se eu digitar -999 e -901, ele mostra 98

Se eu digitar 23 e 63, ele mostra 40

mas se eu digito -9 e 11 ele mostra 1920, aonde 19 seria a resposta correta, vou colar meu código abaixo.

#include <stdio.h> 
int main () { 
int n, i, x, y, result=0; 
scanf("%d", &n); 
	
for(i=0; i<n; i++){ 
	scanf("%d %d", &x, &y);
		if (x<0 && y>0){
			result = y-x;
				printf("%d", result-1);}
	result = y-x;
	printf("%d", result);}
	return 0;}
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Você não está isolando o segundo "printf()":

        if ( x < 0 && y > 0 )
        {
            result = y - x;
            printf("%d\n", result - 1 );
        }
        else
        {
            result = y - x;
            printf("%d\n", result);
        }

O valor 1920 é a saída do primeiro "printf()" que é 19 com o segundo que é 20. Como não possuia quebra de linhas, eles eram mostrados juntos.

Editado por ScreenBlack
Link para o comentário
Compartilhar em outros sites

  • 0

Faltou o else. Código completo:

#include <stdio.h> 

int main() {
    int n, i, x, y, result = 0;

    scanf("%d", &n);

    for (i = 0; i < n; i++) {
        scanf("%d %d", &x, &y);
        result = y - x;
        if (x < 0 && y > 0) {
            printf("%d", result - 1);
        } else {
            printf("%d", result);
        }
    }

    return 0;
}

Talvez você queira adicionar um \n no fim da string do printf, pois o printf não adiciona uma nova linha automaticamente como o puts faz.

Abraços.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...