Advertisement
Guest User

Untitled

a guest
Mar 30th, 2020
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.25 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. const int mxN = 1e4;
  4. int a[mxN][mxN],n,m,x,y;
  5. int D[mxN];
  6. int L[mxN][mxN];
  7. int i,j;
  8. void citire(){
  9.     cout<<"Numarul de noduri: "; cin>>n;
  10.     cout<<"Numarul de muchii: "; cin>>m;
  11.     for(i=1;i<=n;++i)
  12.         for(j=1;j<=n;++j)
  13.             a[i][j]==0;
  14.     for(i=1;i<=m;++i){
  15.         cout<<"Dati extremitatile muchiei "<<i<<" ";
  16.         cin>>x>>y;
  17.         a[x][y]=1;
  18.         a[y][x]=1;
  19.         D[x]++;
  20.         D[y]++;
  21.     }
  22.     cout<<"\n";
  23. }
  24. void grad(){
  25.     cout<<"a) ";
  26.     for(i = 1; i<=n ;++i){
  27.         cout<<D[i]<<" ";
  28.     }
  29.     cout<<endl;
  30. }
  31. void gradpar(){
  32.     cout<<"b) ";
  33.     for(i=1;i<=n;++i){
  34.         if(D[i]%2==0)
  35.             cout<<i<<" ";
  36.     }
  37.     cout<<"\n";
  38. }
  39. void gradi(){
  40.     cout<<"c) ";
  41.     for(i=1;i<=n;++i)
  42.         if(D[i]==0)
  43.             cout<<i<<" ";
  44.     cout<<endl;
  45. }
  46. void gradt(){
  47.     cout<<"d) ";
  48.     for (i=1;i<=n;i++)
  49.         if(D[i]==1)
  50.             cout<<i<<" ";
  51.     cout<<"\n";
  52. }
  53. int egi(){
  54.     cout<<"e) ";
  55.     bool ok=false;
  56.     for(i = 1; i<=n;++i)
  57.         if (D[i]==0)
  58.             ok=true;
  59.     return ok;
  60. }
  61. int egt(){
  62.     cout<<"f) ";
  63.     bool ok=false;
  64.     for(i = 1; i<=n;++i)
  65.         if (D[i]==1)
  66.             ok=true;
  67.     return ok;
  68. }
  69. int egint(){
  70.     cout<<"g) ";
  71.     bool ok = false;
  72.     for(i=1;i<=n;++i)
  73.         if(D[i]!=0 && D[i]!=1)
  74.             ok=true;
  75.     return ok;
  76. }
  77. int totiz(){
  78.     cout<<"h) ";
  79.     bool ok=true;
  80.     for(i = 1; i<=n; ++i)
  81.         if(D[i]!=0)
  82.             ok=false;
  83.     return ok;
  84. }
  85. int totint(){
  86.     cout<<"i) ";
  87.     bool ok=true;
  88.     for(i = 1; i<=n; ++i)
  89.         if(D[i]==0 || D[i]==1)
  90.             ok=false;
  91.     return ok;
  92. }
  93. void grvf(){
  94.     cout<<"j) ";
  95.     int v;
  96.     cin>>v;
  97.     cout<<D[v]<<" ";
  98.     cout<<endl;
  99. }
  100. void ln(){
  101.     int k;
  102.     for (i=1;i<=n;i++){
  103.         k=0;
  104.         for (j=1;j<=n;j++)
  105.             if (a[i][j]==1){
  106.                 k=k+1 ;
  107.                 L[i][k]=j;
  108.             }
  109.     }
  110. }
  111. void nd(){
  112.     ln();
  113.     cout<<"k) ";
  114.     int nd;
  115.     cin>>nd;
  116.     for(j=1;j<=n;++j)
  117.         if(a[nd][j])
  118.             cout<<j<<" ";
  119.     cout<<endl;
  120. }
  121. void veriff(){
  122.     cout<<"l) ";
  123.     for(i=1;i<=n;++i)
  124.         if(D[i] != 0 && D[i] != 1)
  125.             cout<<"Varful "<<i<<" este interior"<<endl;
  126.             else
  127.                 if(D[i]==0)
  128.                     cout<<"Varful "<<i<<" este izolat"<<endl;
  129.                 else
  130.                     if(D[i]==1)
  131.                         cout<<"Varful "<<i<<" este terminal"<<endl;
  132. }
  133. void gradmax(){
  134.     cout<<"m) ";
  135.     int maxl=-1;
  136.     for(i=1;i<=n;++i)
  137.         if(D[i]>maxl)
  138.             maxl=D[i];
  139.     cout<<maxl<<endl;
  140.     for(i=1;i<=n;++i)
  141.         if(D[i]==maxl)
  142.             cout<<i<<" ";
  143.     cout<<endl;
  144. }
  145. void frecvgrad(){
  146.     cout<<"n) ";
  147.     int n1,n2,n3;
  148.     n1=n2=n3=0;
  149.     for(i=1;i<=n;++i){
  150.         if(D[i]==0)
  151.             n1++;
  152.         else if(D[i]==1)
  153.                 n2++;
  154.              else if(D[i] != 0 && D[i] != 1)
  155.                  n3++;
  156.     }
  157.     cout<<"Noduri izolate: "<<n1<<endl;
  158.     cout<<"Noduri terminale: "<<n2<<endl;
  159.     cout<<"Noduri interioare:"<<n3<<endl;
  160. }
  161. void veriford(){
  162.     cout<<"o) ";
  163.     bool ok=true;
  164.     int g[mxN];
  165.     for(i=1;i<=n;++i)
  166.         cin>>g[i];
  167.     for(i=1;i<=n;++i)
  168.         if(g[i]!=D[i])
  169.             ok=false;
  170.     if(ok == false)
  171.         cout<<"Nu sunt in ordine"<<endl;
  172.     else if(ok==true)
  173.             cout<<"Sunt in ordine"<<endl;
  174. }
  175. void verifnord(){
  176.     cout<<"p) ";
  177.     int g[mxN];
  178.     int nr=0;
  179.     for(i=1;i<=n;++i)
  180.         cin>>g[i];
  181.     for(i=1;i<=n;++i)
  182.         for(j=1;j<=n;++j){
  183.             if(g[i]==D[j])
  184.                 nr++;
  185.         }
  186.     if(nr==n)
  187.         cout<<"Da";
  188.     else
  189.     {
  190.         cout<<"Nu";
  191.     }
  192.    
  193. }
  194. int main(){
  195.     citire();
  196.     grad();
  197.     gradpar();
  198.     gradi();
  199.     gradt();
  200.     if(egi()==true) cout <<"DA"<<endl; else cout<<"NU"<<endl;
  201.     if(egt()==true) cout <<"DA"<<endl; else cout<<"NU"<<endl;
  202.     if(egint()==true) cout <<"DA"<<endl; else cout<<"NU"<<endl;
  203.     if(totiz()==true) cout <<"DA"<<endl; else cout<<"NU"<<endl;
  204.     if(totint()==true) cout <<"DA"<<endl; else cout<<"NU"<<endl;
  205.     grvf();
  206.     nd();
  207.     veriff();
  208.     gradmax();
  209.     veriford();
  210.     verifnord();
  211.     return 0;
  212. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement