TEMA

Wrong answer 95%

Kitkat preguntado 1 year ago

#include<stdio.h>
#include<string.h>

int main(){
  int N;  // qtidade de casos de teste;
  char linha1[50], linha2[50];
  int i, j, t1=0, t2=0, maior=0;  //strlen == string lenght;

  scanf("%d", &N);

  for(i=0; i<N; i++){ 
    scanf("%s", &linha1);      //Cada caso teste é composto por uma linha que contém duas
    scanf("%s", &linha2);     //cadeias de caracteres;

    //Para poder concatenar (combinar) precisso saber o tamanho das strings;
    t1 = strlen(linha1);
    t2 = strlen(linha2);

    if(linha1 < linha2)         //Comparação de qual é o maior string;
      maior = linha2;           //Utilizar strlen;
        else
          maior = linha1;

    for(j=0; j<maior; j++){
      if(j < linha1) printf("%c", linha1[j]);
      if(j < linha2) printf("%c", linha2[j]);
    }
        printf("\n");
    }

    return 0;
  }

Recuerda no enviar soluciones. Tu mensaje puede ser revisado por nuestros moderadores.

  • feodorv respondido 1 year ago

      char linha1[50], linha2[50];

    You should use larger buffers:

      char linha1[64], linha2[64];

    Next.

        if(linha1 < linha2)         //Comparação de qual é o maior string;
          maior = linha2;           //Utilizar strlen;
            else
              maior = linha1;

    Seems that you mean t1 instead of linha1 and t2 instead of linha2. Did you try to run your code on sample inputs??? Also here:

    if(j < linha1) ...
    if(j < linha2) ...