Cod sursa(job #253939)
Utilizator | Data | 6 februarie 2009 13:46:46 | |
---|---|---|---|
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;
}