https://www.devskill.com/CodingProblems/ViewProblem/382
এটা , খুব একটা মজার প্রোব্লেম - সামান্য ব্রেইন খাটালেই হয়ে যাবে , অনেকেই প্রশ্ন পড়ে মনে করবে যে-
প্রাইম সংখ্যাগুলি --- বোধহয় , 10^18 অবদি - জেনারেট করতে হবে , কিন্তু - সেটার কি কোনো প্রয়োজন আছে ?? তোমাকে , N & M এর মান দেয়া থাকবে , তোমায় বলতে হবে - Nতম প্রাইম+ Mতম প্রাইম এর যোগফল , জোড় হবে ? নাকি , বিজোড় হবে ??
এটা করার আগে , কিছু বিষয় - খেয়াল রাখি
১) একমাত্র ২ এমন একটি প্রাইম সংখ্যা , যেটা জোড় ।
২) ২ ছাড়া বাকিসব , প্রাইম বিজোড় - কোনো সন্দেহ নাই ।
৩)কোনো জোড় সংখ্যা +কোনো বিজোড় সংখ্যা = কোনো বিজোড় সংখ্যা ।
( যদি , N & M এর যে কোনো একটার মান 1 হয় - তাহলে , Nতম প্রাইম + Mতম প্রাইম এর যোগফল অবশ্যই বিজোড় হবে,যেহেতু - 1 তম প্রাইম শুধু জোড় , বাকিসব বিজোড় । )
৪) কোনো বিজোড় সংখ্যা + কোনো বিজোড় সংখ্যা = কোনো জোড় সংখ্যা ।
অথবা, কোনো জোড় সংখ্যা + কোনো জোড় সংখ্যা = কোনো জোড় সংখ্যা ।
( যদি , N & M এর মান সমান হয় - তাহলে ,Nতম প্রাইম + Mতম প্রাইম এর যোগফল অবশ্যই জোড় হবে / যদি , N & M এর মান সমান নাও হয় তাহলেও , যেহেতু ২ ছাড়া সব প্রাইম বিজোড় তাই , ২টার যোগফলও জোড় হবে । )
#include<bits/stdc++.h>
using namespace std;
//Nayeem Mollick Joy, Applied Physics & Electronic Engineering, University of Rajshahi.
typedef unsigned long long llu;
int main()
{
llu n,m;
while(cin>>m>>n)
{
if(m==n )
{
cout<<"Even"<<endl;
}
else if(m==1||n==1)
{
cout<<"Odd"<<endl;
}
else{
cout<<"Even"<<endl;
}
}
return 0;
}
এটা , খুব একটা মজার প্রোব্লেম - সামান্য ব্রেইন খাটালেই হয়ে যাবে , অনেকেই প্রশ্ন পড়ে মনে করবে যে-
প্রাইম সংখ্যাগুলি --- বোধহয় , 10^18 অবদি - জেনারেট করতে হবে , কিন্তু - সেটার কি কোনো প্রয়োজন আছে ?? তোমাকে , N & M এর মান দেয়া থাকবে , তোমায় বলতে হবে - Nতম প্রাইম+ Mতম প্রাইম এর যোগফল , জোড় হবে ? নাকি , বিজোড় হবে ??
এটা করার আগে , কিছু বিষয় - খেয়াল রাখি
১) একমাত্র ২ এমন একটি প্রাইম সংখ্যা , যেটা জোড় ।
২) ২ ছাড়া বাকিসব , প্রাইম বিজোড় - কোনো সন্দেহ নাই ।
৩)কোনো জোড় সংখ্যা +কোনো বিজোড় সংখ্যা = কোনো বিজোড় সংখ্যা ।
( যদি , N & M এর যে কোনো একটার মান 1 হয় - তাহলে , Nতম প্রাইম + Mতম প্রাইম এর যোগফল অবশ্যই বিজোড় হবে,যেহেতু - 1 তম প্রাইম শুধু জোড় , বাকিসব বিজোড় । )
৪) কোনো বিজোড় সংখ্যা + কোনো বিজোড় সংখ্যা = কোনো জোড় সংখ্যা ।
অথবা, কোনো জোড় সংখ্যা + কোনো জোড় সংখ্যা = কোনো জোড় সংখ্যা ।
( যদি , N & M এর মান সমান হয় - তাহলে ,Nতম প্রাইম + Mতম প্রাইম এর যোগফল অবশ্যই জোড় হবে / যদি , N & M এর মান সমান নাও হয় তাহলেও , যেহেতু ২ ছাড়া সব প্রাইম বিজোড় তাই , ২টার যোগফলও জোড় হবে । )
#include<bits/stdc++.h>
using namespace std;
//Nayeem Mollick Joy, Applied Physics & Electronic Engineering, University of Rajshahi.
typedef unsigned long long llu;
int main()
{
llu n,m;
while(cin>>m>>n)
{
if(m==n )
{
cout<<"Even"<<endl;
}
else if(m==1||n==1)
{
cout<<"Odd"<<endl;
}
else{
cout<<"Even"<<endl;
}
}
return 0;
}
No comments:
Post a Comment