Wednesday, 14 June 2017

UVA 11192 Solution: Group reverse

Key point: প্রবলেমটাতে বলা হয়েছে একটা স্ট্রিং দেওয়া থাকবে যেইটা সর্বচ্চো ১০১ হবে। একটা ইন্টিজার নাম্বার দেওয়া থাকবে যেইটা স্ট্রিংটাকে একটা কয়েটা গ্রুপে ভাগ করবে। প্রতিটা ভাগকে রিভার্স করে প্রিন্ট করতে হবে।
যেমনঃ Ruhulamin এই স্ট্রিংটার সাইজ ৯। এখন একটা ইন্টিজার নিলাম ৩ তাহলে গ্রুপ সংখ্যা হবে ৯/৩=৩ অর্থাৎ স্ট্রিংটা এই রকম হবে Ruh ula min. আখন এইটাকে রিভার্স করলে হবে hurlaunim.

কোডিংঃ


#include<bits/stdc++.h>
using namespace std;
int main()
{
   int n;
   while(scanf("%d",&n)==1)
   {
       int l,ngroup;
       if(n==0)
        break;
       char s[110];
       getchar();
       cin>>s;
       l=strlen(s);
       ngroup=l/n;
       for(int i=1;i<=n;i++)
       {
           int j=i*ngroup;
           int t=ngroup;
           while(t--)
           {
               cout<<s[--j];
           }
       }
       cout<<endl;
   }
   return 0;
}

No comments:

Post a Comment