Pagini recente » Cod sursa (job #2593246) | Cod sursa (job #453466) | Cod sursa (job #1996134) | Cod sursa (job #1565349) | Cod sursa (job #353917)
Cod sursa(job #353917)
#include<fstream.h>
#include<stdlib.h>
ifstream fin("coins.in");
ofstream fout("coins.out");
typedef struct
{
short nrzstg,pozinsir;
} galben;
galben v[22];
short linie[22],paftenie_muta,nrgalblin,galbcrt;
int nrtotzerostg;
long N,nrlin,paftenie_castiga=0;
short count_zeros(short pozcrt)
{
int nrzerostg=0,i=1;
for(i=1;i<pozcrt;i++)
if(linie[i]==0) nrzerostg++;
return nrzerostg;
}
int main()
{
short i;
fin>>N;
for(nrlin=1;nrlin<=N;nrlin++)
{
paftenie_muta=1;
nrgalblin=0;
nrtotzerostg=0;
for(i=1;i<=22;i++)
{
fin>>linie[i];
if(linie[i]==1)
{
nrgalblin++;
v[nrgalblin].pozinsir=i;
v[nrgalblin].nrzstg=0;
}
}
// numar zerourile initiale din stanga fiecarui galben;
for(galbcrt=1;galbcrt<=nrgalblin;galbcrt++)
{
v[galbcrt].nrzstg=count_zeros(v[galbcrt].pozinsir);
nrtotzerostg=nrtotzerostg+v[galbcrt].nrzstg;
}
// daca nr.total de zerouri din stanga e par, paftenie castiga
if (nrtotzerostg % 2==0)
paftenie_castiga=paftenie_castiga+nrgalblin;
}
fout<<paftenie_castiga;
fin.close();
fout.close();
return 0;
}