Cod sursa(job #1863667)

Utilizator c909073Petrisor Addrian c909073 Data 31 ianuarie 2017 09:03:22
Problema Componente biconexe Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.01 kb
#include <fstream>
using namespace std;
ifstream f("biconexe.in");
ofstream g("biconexe.out");
int viz[100001],a[50001][50001],maxi,k,m,n;
int main()
{
    f>>n>>m;
    int x,y,i,j=1,l;
    for(i=1;i<=m;i++)
    {
        f>>x>>y;
        if(viz[x]==0 and viz[y]==0)
        {
         a[j][++k]=x;
         viz[x]=1;
        }
        else
         {
          if(viz[x]==0 and viz[y]==1)
          {
              a[j][++k]=x;
              viz[x]=1;
              j++;
              if(k>=maxi)
                maxi=k;
              k=0;
          }
          else
          {
             if(viz[x]==1 and viz[y]==0)
             {
                 a[j][++k]=x;
                 a[j][++k]=y;
                 if(k>=maxi)
                  maxi=k;
                 j++;
                 k=0;
             }
          }
         }
    }
    g<<j-1<<"\n";
    for(k=1;k<=j-1;k++)
    {for(int l=1;l<=maxi;l++)
    if(a[k][l]!=0)
    g<<a[k][l]<<" ";
    g<<"\n";
    }
    return 0;
}