Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Problema alfabetar  (Citit de 18532 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Sagunistu
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« : Martie 27, 2013, 13:13:32 »

Ma chinui de mult la problema alfabetar, data la OMI Iasi 2011. Ea e foarte simpla, algoritmul merge, doar ca am avut probleme cu afisarea rezultatului. Daca deschideam fisierul out prin codeblocks, nu imi aparea nimic. Daca il deschideam dibn afara, prin notepad, imi aparea raspunsul corect. Doar ca evaluatorul imi spune peste tot Wrong Answer. Am reusit sa rezolv aceasta probleme cu o alta matrice, reusind sa afisez si cand deschideam dinauntru. Cu toate acestea, evaluatorul continua sa-mi spuna Wrong Answer pana si la exemplul problemei, la care sunt sigur ca e corect (am vazut cu ochii mei).
Va rog, daca ma puteti ajuta.
Multumesc anticipat.
Cod:
Cod:
#include <fstream>
#include <cstring>
#include <iostream>

using namespace std;
char a[101][201];
char b[101][201];
int main()
{ifstream fin("alfabetar.in");
ofstream fout("alfabetar.out");
int n,i,j,maxim,k,l;
fin>>n;
for(i=0;i<=n;i++)
    fin>>a[i];
maxim=0;
for(i=1;i<=n;i++)
    {k=strlen(a[i]);
     if(k>maxim)
        maxim=k;
    }
for(j=maxim-1,l=0;j>-1;j--,l++)
    {for(i=0,k=0;i<n;i++,k++)
        {b[l][k]=a[i][j];
         if(a[i][j]==0)
            b[l][k]=' ';
        }
    }
for(i=0;i<=maxim;i++)
    {fout<<b[i];
     fout<<"\n";
    }
    return 0;
}

Memorat
Steve
Client obisnuit
**

Karma: 36
Deconectat Deconectat

Mesaje: 72



Vezi Profilul
« Răspunde #1 : Martie 27, 2013, 14:44:17 »

E probabil din cauza faptului ca vectorul ala de stringuri b nu are caracterul '\0' la sfarsit, iar cand faci fout << b[ i ] iti crapa, de-asta nu iti arata nici in editor raspunsul. Incearca sa pui la sfarsitul forului in care atribui, b[ l ][ n ] = '\0' si vezi daca iti merge.
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines