Wednesday, August 16, 2017

339A. Helpful Maths Codeforces Problem Solution In(C++,C#) & LOgic

http://codeforces.com/problemset/problem/339/A

খুবই সোজা একটা মজার প্রোবলেম , জাস্ট সর্টিং করতে হবে - আর কিছু নয় বাট - সেটা একটু অন্যভাবে , এই আর কি  ।।   তোমায় ১+৩+২+৪+৩ এরকম একটা ধারা দেয়া থাকবে - তোমায় , সেটাকেই সরটিং করে এভাবে ১+২+৩+৩+৪ লিখতে হবে , এক কথায় - ছোট থেকে বড় আকারে লিখতে হবে  ।। তাহলেই , প্রথমে দেয়া স্ট্রিং টাকে সরটিং করলে , যেটা দাঁড়াবে - সেটা হলো , একদম প্রথমে - যে কয়টা + চিহ্ন আছে , সবগুলো একসাথে থাকবে । এখন + চিহ্ন কয়টা থাকতে পারে ???  যেমন, ১+৩+২+৪+৩ এইটাতে - স্ট্রিং এর পরিমাপ হইলো ৯ তাহলে , মোট + চিহ্ন আছে , ৯/২ = = ৪ টা , অর্থাৎ সর্টিং করার পর ০ থেকে (৪-১) অব্দি স্ট্রিং থেকে মুছে দিলেই- সব + চিহ্ন চলে যাবে , তারপর থাকবে শুধু সংখ্যাগুলি -তারপর সেগুলোর মাঝে মাঝে একটা করে + চিহ্ন দিয়ে লিখলেই  কাজ শেষ , ব্যাস

IN C++ LANGUAGE....................

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

#include<bits/stdc++.h>
#include<iostream>
#include<cstdio>
#include<string.h>
using namespace std;

int main()
{
    int i,u,count=0;
   
   string j,a;
  
   cin>>j;
  
   int l=j.length();
  
  int p=(l/2)+1;
 
   sort(j.begin(),j.end());
  
   j.erase(0,p-1);
  
   for(i=0;i<p;i++){
       
        count++;
  
    cout<<j[i];
   
    if(count!=p)
       
    {
        cout<<"+";
    }
   
   }
  
   return 0;
  
}


IN C# LANGUAGE................

using System; 

 class Exercise11 


   
     static void Main()
    
     {
        
         string s =Console.ReadLine();
        
         int l=(s.Length)/2;
        
         l=l+1;
        
         string[] values=s.Split('+');
        
         int[] ar=new int[l];
        
         for(int i=0;i<l;i++){
            
         int a=int.Parse(values[i]);
        
         ar[i]=a;
        
         }
        
         for(int j=0;j<l;j++)
         {
             for(int h=0;h<l;h++)
             {
                 if(ar[h]<ar[j])
                 {
                     int temp=ar[j];
                     ar[j]=ar[h];
                     ar[h]=temp;
                 }
             }
         }
        
         for(int d=l-1;d>=0;d--)
        
         {
             if(d!=0){
             Console.Write(ar[d]);
             }
             if(d!=0)
             {
                 Console.Write("+");
             }
             if(d==0)
             {
                 Console.WriteLine(ar[d]);
             }
         }
        
     }

} 

No comments:

Post a Comment