Pagini recente » Cod sursa (job #105809) | Cod sursa (job #1724359) | Cod sursa (job #1847930) | Cod sursa (job #1027146) | Cod sursa (job #34618)
Cod sursa(job #34618)
#include <fstream.h>
#define mx 1024
ifstream fi("party.in");
ofstream fo("party.out");
struct rel
{int x;
int y;
int xy;};
long n;
long cb;
long m;
rel v[mx];
long p=0;
void scrie(long k)
{long i;
for (i=0;i<n;i++)
if (k&(1<<i)) p++;
fo<<p<<'\n';
for (i=0;i<n;i++)
if (k&(1<<i))
fo<<i+1<<'\n';}
int main()
{long i,j;
long a,b,c;
long r;
fi>>n>>m;
for (i=0;i<m;i++)
fi>>v[i].x>>v[i].y>>v[i].xy;
fi.close();
cb=(1<<n);
for (i=0;i<cb;i++)
{r=1;
for (j=0;j<m;j++)
{a=i&(1<<(v[j].x-1));
b=i&(1<<(v[j].y-1));
c=v[j].xy;
if (c==0)
{if (!(a|b)) {r=0;break;}}
else if (c==1)
{if (a==0 && b) {r=0;break;}}
else if (c==2)
{if (b==0 && a) {r=0;break;}}
else if (c==3)
if (a&b) {r=0;break;}}
if (r==1 && i>0)
{scrie(i);
break;}}
fo.close();
return 0;}