Pagini recente »
Borderou de evaluare (job #155655)
|
Cod sursă (job #819713)
|
Cod sursă (job #585562)
|
Istoria paginii utilizator/somedad
|
Cod sursă (job #491898)
Cod sursă (job
#491898)
#include <bits/stdc++.h>
using namespace std;
ifstream in("beculete.in");
ofstream out ("beculete.out");
struct bec{
int linie;
int coloana;
bool valoare;
};
bool sortare (bec a, bec b)
{
if(a.linie != b.linie)
return a.linie<b.linie;
return a.coloana<b.coloana;
}
bool lum[3][50005];
int main()
{
bec v[50];
int n,d,i,l,c,va,lmin=INT_MAX,k,l1,j;
in>>n>>d;
for(i=1; i<=d; i++)
{
in>>l>>c>>va;
v[i].linie=l;
v[i].coloana=c;
v[i].valoare=va;
lmin=min(l,lmin);
}
sort(v+1,v+d+1, sortare);k=1;
l1=pow(2,int(log10(lmin)/log10(2)));
for(i=1; i<=l1; i++)
{
if(v[k].linie==l1 && v[k].coloana==i)
lum[1][i]=v[k].valoare,k++;
else
lum[1][i]=1;
}
for(i=l1+1; i<=n; i++)
{
for( j=2; j<=i-1; j++)
{
if(lum[1][j-1]+lum[1][j]==1)
lum[2][j]=1;
else
lum[2][j]=0;
}
lum[2][1]=lum[1][1];
lum[2][i]=lum[1][i-1];
for(j=1; j<=i; j++)
lum[1][j]=lum[2][j];
}
for(i=1; i<=n; i++)
out<<lum[2][i]<<" ";
return 0;
}