Professional Documents
Culture Documents
Adiacenta1 #413
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("izolate.in");
ofstream g("izolate.out");
int n,m,i,j,a[1001][1001],gr[1001];
void citire()
{f>>n;
while(f>>i>>j)
{a[i][j]=a[j][i]=1;
}}
int main()
{citire();
for(int i=1;i<=n;i++)
{gr[i]=0;
for(int j=1;j<=n;j++)
{if(a[i][j]==1)
gr[i]++;
}}
int nrv=0;
for(int i=1;i<=n;i++)
if(gr[i]==0)
nrv++;
else
{g<<nr<<" ";
7.GradK for(int i=1;i<=n;i++)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("gradk.in");
ofstream g("gradk.out");
int n,k,m,a[1001]
[1001],i,j,gr,x,v[1001],nr;
void citire()
{f>>n>>k;
while(f>>i>>j)
a[i][j]=a[j][i]=1;}
int grd(int y)
{gr=0;
for(int j=1;j<=n;j++)
if(a[y][j]==1)
gr++;
return gr;}
int main()
{citire();
for(int i=1;i<=n;i++)
if(grd(i)==k)
nr++;
if(nr==0)
g<<"NU EXISTA";
g<<nr<<" ";
for(int i=1;i<=n;i++)
if(grd(i)==maxi)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("gradmax.in");
ofstream g("gradmax.out");
int n,k,m,a[1001]
[1001],i,j,gr,x,v[1001],nr,maxi=-1;
void citire()
{f>>n;
while(f>>i>>j)
a[i][j]=a[j][i]=1;}
int grd(int y)
{gr=0;
for(int j=1;j<=n;j++)
if(a[y][j]==1)
gr++;
return gr;}
int main()
{citire();
for(int i=1;i<=n;i++)
{x=grd(i);
if(x>maxi)
{maxi=x;
nr=1;}
else if(x==maxi)
nr++;}
int main()
{citire();
for(int i=1;i<=n;i++)
if(i%k==0)
{for(int j=1;j<=n;j++)
9.Subgraf2
a[i][j]=a[j][i]=0;}
- n noduri, etichetate de la 1 la n, m muchii
for(int i=1;i<=n;i++)
și un număr k.
{for(int j=1;j<=n;j++)
-Din acest graf se elimină toate nodurile
if(a[i][j]==1)
etichetate cu multipli ai lui k. Să se
determine câte muchii va avea subgraful nr++;
obținut. }
cout<<nr/2;
#include <iostream>
return 0;
#include <fstream>
}
#include <cmath>
using namespace std;
ifstream f("gradk.in");
ofstream g("gradk.out");
int n,k,m,a[1001]
[1001],i,j,gr,x,v[1001],nr,maxim,minim;
void citire()
{
cin>>n>>m>>k;
while(cin>>i>>j)
a[i][j]=a[j][i]=1;
}
int grd(int y)
{gr=0;
for(int j=1;j<=n;j++)
if(a[y][j]==1)
gr++;
return gr;
}
{for(int i=2;i<=p;i++)
if(a[v[i-1]][v[i]]==0)
return 0;
return 1;
}
int elementar (int v[],int p)
10.VerifLant
{
- n vârfuri și mai multe șiruri de vârfuri din for(int i=2;i<=p;i++)
graf. Să se verifice despre fiecare șir dacă
reprezintă un lanț. În caz afirmativ, să se for(int j=1;j<=i-1;j++)
precizeze dacă este elementar. if(v[i]==v[j])
void citire() {
{fin>>n>>m; citire();
{fin>>n1>>n2; back(2);
fin>>p>>q;} return 0;
int verif(int k) }
{for(int i=1;i<k;i++)