kruskal algorithm

 #include<bits/stdc++.h>

using namespace std;

int main()

{

    long long i,j,n,k,temp,ar[100]= {},a[100],b[100],x[100],y[100],aa;

    cin>>n;

    k=0;

    for(i=0; i<n; i++)

    {

        for(j=0; j<n; j++)

        {

            cout<<i+1<<" "<<j+1<<"=";

            cin>>aa;

            ar[k]=aa;

            if(aa==0)

                ar[k]=999;

            a[k]=i;

            b[k]=j;

            k++;

            cout<<endl;

        }

    }

    for(i=0; i<k; i++)

    {

        for(j=i+1; j<k; j++)

        {


            if(ar[i]>ar[j])

            {

                temp=ar[i];

                ar[i]=ar[j];

                ar[j]=temp;


                temp=a[i];

                a[i]=a[j];

                a[j]=temp;


                temp=b[i];

                b[i]=b[j];

                b[j]=temp;


            }

        }

    }


    for(i=0; i<100; i++)

    {

        x[i]=0;

        y[i]=0;


    }


    for(i=0; i<k; i++)

        cout<<ar[i]<<" "<<a[i]<<" "<<b[i]<<endl;



    long long sum=0,m=0;

    for(i=0; i<n; i++)

    {

        for(j=0; j<n; j++)

        {

            cout<<x[a[i]]<<" "<<x[b[j]]<<" "<< ar[m]<<endl;

            if(x[a[i]]!=1&&x[b[j]]!=1)

            {

                sum+=ar[m];

                x[a[i]]=1;

                x[b[j]]=1;


            }

            m++;


        }

    }


    cout<<sum<<endl;



    /*

    0

    3

    2

    3

    0

    1

    2

    1

    0

    */

}



মন্তব্যসমূহ

এই ব্লগটি থেকে জনপ্রিয় পোস্টগুলি

BSF

Job Sequencing Problem

Dijkstra's shortest path algorithm-2