Pagini recente » Cod sursa (job #2845544) | Cod sursa (job #2877604) | Cod sursa (job #2724469) | Cod sursa (job #2536864) | Cod sursa (job #1132514)
#include<fstream>
#include<stdlib.h>
#define dim 1002
using namespace std;
ifstream f("party.in");
ofstream g("party.out");
struct cub{
int x,y,c;
};
cub v[dim];
int n,m,cnt;
int C[dim];
int check (int k,int i){
if(k==0){
return C[v[i].x] || C[v[i].y];
}
if(k==1){
return C[v[i].x] || !C[v[i].y];
}
if(k==2){
return !C[v[i].x] || C[v[i].y];
}
if(k==2){
return C[v[i].x]+C[v[i].y]!=2;
}
return 0;
}
int main () {
f>>n>>m;
for(int i=1;i<=m;++i){
f >> v[i].x >>v[i].y >>v[i].c;
}
for(int i=1;i<=n;++i){
C[i]=1;
}
for(int i=1;i<=m;++i){
if( check (v[i].c,i) == 0) {
int idx=rand()%2;
if( idx==1 ){
C[v[i].x] =!C[v[i].x];
}
else{
C[v[i].y]=!C[v[i].y];
}
i=0;
}
}
for(int i=1;i<=n;++i){
if(C[i])
++cnt;
}
g<<cnt<<"\n";
for(int i=1;i<=n;++i){
if(C[i]){
g<<i<<"\n";
}
}
return 0;
}