Wednesday, July 12, 2017

299 - Train Swapping Uva Solution & Logic

https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=235

      খুবই সহজ একটা প্রোবলেম , যদি তুমি বিষয়টা  ধরতে পারো ???

 বিভিন্নরকম সর্টিং  আছে , তার ভেতর বাবল সর্ট খুব জনপ্রিয় , এই প্রোবলেম তারই উদাহরণ ।

বাবল শর্ট জানা না থাকলে , জেনে নাও । চলো কোড দেখে আসি ,

#include<bits/stdc++.h>

// Nayeem Mollick Joy ,Applied Physics & Electronic Engineering , University of Rajshahi.

using namespace std;

int main()
{
   int t,n,a[50];
   cin>>t;
   while(t--)
   {
       cin>>n;
       for(int i=0;i<n;i++)
       {
           cin>>a[i];
       }
       int swaps=0;
       for(int k=0;k<n;k++)
       {
           for(int j=0;j<n-1;j++)
           {
               if(a[j+1]<a[j])
               {
                   int temp=a[j];
                   a[j]=a[j+1];
                   a[j+1]=temp;
                   swaps++;
               }
           }
       }
       printf("Optimal train swapping takes %d swaps.\n",swaps);
   }
   return 0;
}

No comments:

Post a Comment