Pagini recente » Cod sursa (job #1300317) | Cod sursa (job #1121857) | Cod sursa (job #1428517) | Cod sursa (job #2386680) | Cod sursa (job #1590899)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("dsf.in");
ofstream g("dsf.out");
int i,j,r,a[100005],v[200005],k,n,m,e;
int main()
{f>>n>>m;
for(i=1;i<=m;i++)
{k++;
f>>v[k];
k++;
f>>v[k];
if(a[v[k-1]]==a[v[k]]&& a[v[k]]==0)
{r++;
a[v[k]]=r;
a[v[k-1]]=r;}
else
{if(a[v[k]]<a[v[k-1]]&&a[v[k]]!=0)
{for(j=1;j<=k;j++)
{if(a[v[j]]==a[v[k-1]])
a[v[j]]=a[v[k]];
if(a[v[j]]>a[v[k-1]])
a[v[j]]--;}}
else
{if(a[v[k]]==0)
a[v[k]]=a[v[k-1]];
else
if(a[v[k-1]]==0)
a[v[k-1]]=a[v[k]];}}}
for(i=1;i<=n;i++)
if(a[i]==0)
e++;
g<<r+e;}