Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
Mensagens : 1
Data de inscrição : 13/04/2017
Ver perfil do usuário

Ajuda - URI 1237

em Qui Maio 04 2017, 19:45
Estou recebendo Runtime Error, não faço a minima ideia do motivo. Usei C++ porque ele é um pouco mais amigável que o C, além do mais, não há muita diferença.
Na minha maquina tudo roda perfeitamente, os resultados são os mesmos, mas quando submeto o código recebo essa mensagem de "Runtime Error". O que está errado?
Código
Código:
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

using namespace std;

int main()
{
    string texto1,texto2;
    int maior, tamanhoString1,tamanhoString2,substring;
    char *vetor1, *vetor2, *v1, *v2;
    while(getline(cin,texto1)){
        getline(cin,texto2);
        maior = substring = tamanhoString1 = tamanhoString2 = 0;
        tamanhoString1 = texto1.length() + 1;
        vetor1 = (char *) calloc(tamanhoString1,sizeof(char));
        tamanhoString2 = texto2.length() + 1;
        for(int i=0;i<tamanhoString1; i++){
            strcpy(vetor1,texto1.c_str());
        }
        vetor2 = (char *) calloc(tamanhoString2,sizeof(char));
        for(int i=0;i<tamanhoString1; i++){
            strcpy(vetor2,texto2.c_str());
        }
        for(int i=0;i<tamanhoString2; i++){
            strcpy(vetor1,texto1.c_str());
        }
        if(tamanhoString1>tamanhoString2){
            maior = tamanhoString1;
            v1 = vetor1;
            v2 = vetor2;
        } else {
            maior = tamanhoString2;
            v1 = vetor2;
            v2 = vetor1;
        }
        int menor = tamanhoString1+tamanhoString2-maior;
        int contador,posicao;
        contador = posicao = 0;
        for(int i=0; i<maior-1; i++){
            posicao = i;
            for(int j=0; j<menor-1; j++){
                if(v1[posicao]==v2[j]){
                    contador++;
                    posicao++;
                }
            }
            if(substring<contador){
                substring = contador;
            }
            contador = 0;
        }
        cout<<substring<<endl;
    }
    free(v1);
    free(v2);
    free(vetor1);
    free(vetor2);
    return 0;
}
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum