Skip to main content

Adjacency matrix list

#include<bits/stdc++.h>
using namespace std;
void add_edge(vector<int> adj[],int u,int v)
{
    adj[u].push_back(v);
    adj[v].push_back(u);
}
void print_graph(vector<int>adj[],int V)
{
    for(int i=0;i<V;i++)
    {
        for(auto x:adj[i])
            cout<<x<<"->";
        cout<<endl;
    }
}
int main()
{
    int V;
    cout<<"Enter the number of vertices"<<endl;
    cin>>V;
    vector<int> adj[V];
    while(1)
    {
        int x,y;
        cout<<"Enter the nodes"<<endl;
        cin>>x>>y;
        add_edge(adj,x,y);
        cout<<"Enter -1 to exit"<<endl;
        int t;
        cin>>t;
        if(t==-1)
            break;
    }
    print_graph(adj,V);
    return 0;
}

Comments

Popular posts from this blog

Codeforces-Dubstep solution

#include < bits / stdc ++. h > using namespace std ; int main () { string str ; getline ( cin , str ); int index = str . find ( "WUB" ); int count = 0 ; while ( index !=- 1 ) { str . replace ( index , 3 , " " ); //str.erase(str.begin()+index,str.begin()+index+3); index = str . find ( "WUB" ); } cout << str ; return 0 ; }

codeforces-Anton and Danik

#include < bits / stdc ++. h > using namespace std ; int main () { long n ; string str ; cin >> n ; cin >> str ; long count = 0 , index ; index = str . find ( "A" ); while ( index !=- 1 ) { count ++; str . erase ( str . begin ()+ index , str . begin ()+ index + 1 ); index = str . find ( "A" ); } if ( count > n - count ) cout << "Anton" ; else if ( count < n - count ) cout << "Danik" ; else cout << "Friendship" ; return 0 ; }

codeforces-puzzles solution

#include <iostream> #include <vector> #include <algorithm> #include <map> using namespace std ; int main () { int n , m ; cin >> n >> m ; vector <int> vect ; map < int , int > mp ; for ( int i = 0 ; i < m ; i ++) { int x ; cin >> x ; mp [ x ]++; vect . push_back ( x ); } sort ( vect . begin (), vect . end ()); int small = vect [ n - 1 ]- vect [ 0 ]; for ( int i = 0 ; i < vect . size ()- n + 1 ; i ++) { int d = vect [ i + n - 1 ]- vect [ i ]; if ( small > d ) small = d ; } int flag = 1 ; for ( auto k : mp ) { if ( k . second >= n ) { cout << "0" ; flag = 0 ; break ; } } if ( flag == 1 ) { cout << small ; } return 0 ; }