Cod sursa(job #253930)

Utilizator allynaAlina S allyna Data 6 februarie 2009 13:40:53
Problema Episoade Scor 0
Compilator cpp Status done
Runda Stelele Informaticii 2009, clasele 9-10, ziua 1 Marime 2.68 kb
#include<fstream.h>
#include<iostream.h>
#include<string.h>
#include<stdlib.h>
char a[1000],x[1000],mat[1000][1000],val[1000];
int i,j,n,m,lung,q,p0[10000],s;
int verific(int r)
{
    int l;
    for(l=1;l<=q;l++)
                     if(x[l]==r) return 0;
    return 1;
}
int main()
{
    ifstream in("episoade.in");
    ofstream out("episoade.out");
    
    in>>a;
    
    lung=strlen(a);
    in>>m>>n;
    for(i=1;i<=m;i++)
                     for(j=1;j<=n;j++)
                                      in>>mat[i][j];
     for(i=1;i<lung;i++)
                       {
                                      if(a[i]=='>')
                                    {                                    
                                    if(verific(a[i-1])==1)
                                                          x[q++]=a[i-1];
                                    if(verific(a[i+1])==1)
                                                          x[q++]=a[i+1];                      
                                    }                                          
                                    if(a[i]=='#')
                                                 x[q++]='0';
                                     
                       }
    int l1,l2;
    for(j=1;j<q;j++)
                    for(l1=1;l1<=m;l1++)
                                            {
                                            for(l2=1;l2<=n;l2++)
                                                          {
                                                                if(mat[l1][l2]==x[j])
                                                                            if(mat[l1][l2+1]!=x[j+1] && x[j+1]!='0')
                                                                                              {
                                                                                                   val[s++]='0';
                                                                                                   break;
                                                                                                   
                                                                                                   }
                                                          }                                                                                 
                                                      val[s++]='1';
                                                      }
    for(i=0;i<m;i++)
                     out<<val[i]<<endl;                                                                    
    return 0;
}