Estoy tratando de resolver un problema en SPOJ y encuentro un error de tiempo de ejecución. ¿Cuál es el error en mi código?

Tu codigo :

  #include 
 int main ()
 {
     int i, j, n, m;
     int s [n];
     int q [m];

     scanf ("% d", & n);

     para (i = 0; i <= n; i ++)
           scanf ("% d", & s [i]);
                         
     scanf ("% d", & m);

     para (j = 0; j <= m; j ++) {
         scanf ("% d", & q [j]);                                   
    
 para (i = 0; i <= n; i ++)
 
        para (j = 0; j <= m; j ++)

              si (s [i] = q [j])

                      printf ("d", i);

    devuelve 0;
 }

Primer error tuyo:
puede crear s [n] y q [m] solo después de tomar los valores de ny m

Segundo error
Tu lógica está mal.
debería ser

  para (i = 0, j = 0; i <ny j  = q [j])
                    j ++;
              }

           
    devuelve 0;

Mire, inicialmente nym se inicializan con algunos valores basura (que pueden ser negativos o bastante grandes). El error que está cometiendo es que sin inicializar nym, está inicializando las matrices s [] y q [] usando sus valores basura. que está causando falla de segmentación, un tipo de error en tiempo de ejecución .

Una cosa más, en todos los bucles que ha utilizado (i = 0; i <= n; i ++), lo cual es incorrecto ya que solo hay n elementos y está atravesando n + 1 elementos que luego pueden causar fallas de segmentación. Modifique ese bucle para for (i = 0; i

Espero que esto te ayude 🙂

En primer lugar, tu código está equivocado. No imprimirá el resultado deseado. Déjenos llegar a su error.
1. Obtiene un error de segmentación porque ha declarado las matrices de longitudes variables que no son aceptadas por gcc (4.3.2) (que SPOJ utiliza para compilar). En su lugar, escriba int s [101], int q [101];
2. También ha tomado el tamaño digamos ny m, y en el bucle for ha escrito la condición (i = 0; i <= n; i ++) ... Dará un error de compilación ya que el último elemento de la matriz estará fuera de rango.

Aquí está mi solución al problema y se acepta en SPOJ.
Ideone.com

En su código, se le declaran dos matrices enteras con tamaño N y M, antes de inicializar los valores de N y M

int n, m;
int s [n];
int q [m];

En el problema mencionado anteriormente se encuentra el error de tiempo de ejecución, si es SIGSEGV significa error de segmentación. El error SIGSEGV se produce cuando intenta acceder al índice fuera del elemento enlazado en una matriz.
Y también se produce un error SIGSEGV cuando intenta acceder al valor del puntero NULL.

Según las restricciones del problema, los valores máximos de N y M son <= 100, por lo que puede declarar

int s [100];
int q [100];

o puedes declarar
int n, m;
scanf (“% d% d”, & n, & m);
int s [n];
int q [m];

Cambios como este pueden superar el error … 🙂 (Creo que ya lo tienes)

Ya tienes el formulario de respuesta Arjun Mishra

  1. if (arr1 [i]> arr2 [i] || arr1 [i]
  2. {
  3. System.out.println (arr1 [i]);
  4. }

More Interesting

Estoy tratando de ingresar una lista vinculada en C ++, luego registrar una posición en la lista después de la cual quiero agregar más elementos y finalmente, imprimir la lista actualizada. El siguiente código da un error de tiempo de ejecución. Cual es el error

Elegí Biztalk en lugar de SharePoint. ¿He cometido un error?

Sé javascript ¿Podría hacer juegos simples y complejos para computadoras (Steam) y tiendas de teléfonos inteligentes?

¿Me pido demasiado como programador autodidacta?

Tengo 17 años y juego durante aproximadamente 4 horas. ¿Puedo ser un gran programador si codifico aproximadamente el doble de tiempo en los juegos?

¿Estoy sufriendo de agotamiento? Y si es así, ¿qué debo hacer al respecto?

Transferí una cantidad de HDFC a una cuenta ICICI. El código IFSC es incorrecto, pero el número de cuenta es correcto. ¿Qué hago ahora?

No soy un estudiante de CS pero quiero ser un programador profesional. ¿Cómo puedo hacer eso?

Estoy tratando de diseñar un nuevo lenguaje de programación. ¿Cuáles son algunas ideas o conceptos nuevos que puedo incorporar al lenguaje?

Tengo dos columnas en una tabla año de nacimiento y mes de nacimiento. Quiero calcular la edad Intenté lanzar y convertir pero no me ayudó. Asumo el día predeterminado como el primer día de cada mes. ¿Qué tengo que hacer?

Acabo de descargar el paquete SocialMediaLab en R. ¿Para qué lo puedo usar?

Tengo una idea pero no tengo el conocimiento técnico requerido. ¿Cómo puedo ir?

Si construyo un programa que detecta todos los patrones del universo, ¿puedo predecir el futuro?

Soy nuevo en programación y no sé nada sobre GitHub. ¿Qué es? ¿Qué podemos hacer con eso?

Completé el curso PHP Codecademy, ¿y ahora qué?