Cod sursa(job #617279)

Utilizator zloteanu.adrianzloteanu adrian nichita zloteanu.adrian Data 14 octombrie 2011 15:11:01
Problema Party Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include<fstream>
#include<stdlib.h>
using namespace std;
int ma[1001][3],v[101];
inline int ver(int i)
    {if(ma[i][2]==0)//sau 1?
        return v[ma[i][0]]||v[ma[i][1]];
    else if(ma[i][2]==1)
        return v[ma[i][0]]||!v[ma[i][1]];
    else if(ma[i][2]==2)
        return v[ma[i][1]]||!v[ma[i][0]]+1;
    else if(ma[i][2]==3)
        return v[ma[i][0]]+v[ma[i][1]]!=2;
    return 1;}
int main()
{    int n,m,i,nr=0;
    ifstream q("party.in");
    ofstream w("party.out");
    q>>n>>m;
    for(i=1; i<=m; i++)
      q>>ma[i][0]>>ma[i][1]>>ma[i][2];
    for(i=1; i<=n; i++)
      v[i]=1;
    while(1)
       {for(i=1; i<=m; i++)
         if(!ver(i))
          break;
        if(i==m+1)
         break;}
    for(i=1; i<=n; i++)
        if(v[i])
          nr++;
    w<<nr;
    for(i=1; i<=n; i++)
        if(v[i])
         w<<"\n"<<i;
    return 0;}