https://www.devskill.com/CodingProblems/ViewProblem/74
বাচ্চা লেভেলের একটা সমস্যা , আমরা মোবাইলের কি-প্যাডে যেরকম সিকুয়েন্স দেখতে পাই সেটা যদি একটু চেঞ্জ করি ,তাহলে কি দাঁড়ায় ??
1 2 3
6 5 4
7 8 9
.......................
এখন তোমাকে Row নাম্বার দেয়া থাকবে , তোমায় সেই Row এর ভেতরে যে তিন'টি সংখ্যা আছে সেটা প্রিন্ট করতে হবে ।। তাহলে , ধরো -- যদি দেয়া থাকবে 2 ,তাহলে - 6 5 4, অর্থাৎ - বাম পাশের নাম্বার'টি ( 6 ) , Row নাম্বার ( 2 ) এর তিনগুণ , তাই না ?? তারপরের ডান দিকের সংখ্যাটি আরো এক কম , আর - তারপরের ডান দিকের সংখ্যাটি আরো এক কম।
ম্যাথমেটিকালি যেভাবে লিখা যায় , (3*n ) (3*n -1) (3*n-2)
আর যদি , Row নাম্বার বিজোড় হয় ,তাহলে ?? এবার কিন্তু , একটু আলাদা উপরের সিকুয়েন্স দেখেই বুঝতেই পারবে , যাই হোক ------------------
ম্যাথমেটিকালি যেভাবে লিখা যায় , (3*n -2) (3*n -1) (3*n)
একটু , ভেবে দেখো --- আশা করি , বুঝতে পারবে সিকুয়েন্স গুলি । ।
চলো , কোড দেখি এবার প্রথমে C++ এর কোড দেখি ,
#include<iostream>
using namespace std;
void pattern(unsigned long long int N)
{
if(N%2==0)
{
N=N*3;
cout<<" "<<N<<" "<<N-1<<" "<<N-2<<endl;
}
else
{
N=N*3;
cout<<" "<<N-2<<" "<<N-1<<" "<<N<<endl;
}
}
int main()
{
int t;
cin>>t;
unsigned long long int N;
for(int i=1;i<=t;i++)
{
cin>>N;
cout<<"Case #"<<i<<":";
pattern(N);
}
return 0;
}
এবার C# ( সি শারপ) এ কোড দেখি ---
using System;
public class Test
{
public static void Main()
{
int t=Convert.ToInt32(Console.ReadLine());
for(int i=1;i<=t;i++)
{
long N=Convert.ToInt64(Console.ReadLine());
if(N%2==0)
{
N=N*3;
Console.WriteLine("Case #"+i+": "+N+" "+(N-1)+" "+(N-2));
}
else
{
N=N*3;
Console.WriteLine("Case #"+i+": "+(N-2)+" "+(N-1)+" "+N);
}
}
}
}
No comments:
Post a Comment