https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=996
an accepted programme is given below :
#include<bits/stdc++.h>
using namespace std;
int main()
{
unsigned long int a,b,m;
while(scanf("%lu%lu",&a,&b)==2)
{
if(b>a)
{
m=b-a;
cout<<m<<endl;
}
else
{
m=a-b;
cout<<m<<endl;
}
}
return 0;
}
এই প্রবলেমটা সবচেয়ে সহজ প্রবলেম হিসেবে পরিচিত UVA তে । সবাই একবার পড়ার পরই বুঝতে পারে কি করতে হবে । সাথে সাথে শুরু করে দেই প্রোগ্রাম লিখা ঠিক এইভাবে int a,b,x;
if(a>b) then x=a-b; else x=b-a । ভাই একটু ভাল করে পড় প্রবলেমটা। এই প্রবলেমটাতে যেই ট্রিক্টা আছে সেটা হল ২^32 পর্যন্ত ইনপুট নেয়ার বিষয়টা। ইন্টিজার কখনও 2^32 পর্যন্ত ইনপুট নিতে পারেনা। ইন্টিজার এর রেঞ্জ হল -2^31 থেকে +2^31-1 = -2147483648 থেকে +2147483647 পর্যন্ত তাই এই প্রব্লেমটাতে ইন্তিজার ব্যবহার করা দণ্ডনীয় অপরাধ হবে। কিন্তু Unsigned long integer or long long int ব্যবহার করা যাবে। কারন Unsigned long integer 2^32-1= ৪২৯৪৯৬৭২৯৫ পর্যন্ত ইনপুট নিতে পারে আর long long int 2^64-1 = –9,223,372,036,854,775,808 থেকে 9,223,372,036,854,775,807 পর্যন্ত ইনপুট নিতে পারে । সো অনায়াসে চোখ বন্ধ করে তুমি long long int অথবা Unsigned long integer ব্যবহার করতে পারো। সি তে long long int এবং Unsigned long integer এর ফরমেট স্পেছিফাইয়ার হল যথাক্রমে %lu এবং %lld ।
if(a>b) then x=a-b; else x=b-a । ভাই একটু ভাল করে পড় প্রবলেমটা। এই প্রবলেমটাতে যেই ট্রিক্টা আছে সেটা হল ২^32 পর্যন্ত ইনপুট নেয়ার বিষয়টা। ইন্টিজার কখনও 2^32 পর্যন্ত ইনপুট নিতে পারেনা। ইন্টিজার এর রেঞ্জ হল -2^31 থেকে +2^31-1 = -2147483648 থেকে +2147483647 পর্যন্ত তাই এই প্রব্লেমটাতে ইন্তিজার ব্যবহার করা দণ্ডনীয় অপরাধ হবে। কিন্তু Unsigned long integer or long long int ব্যবহার করা যাবে। কারন Unsigned long integer 2^32-1= ৪২৯৪৯৬৭২৯৫ পর্যন্ত ইনপুট নিতে পারে আর long long int 2^64-1 = –9,223,372,036,854,775,808 থেকে 9,223,372,036,854,775,807 পর্যন্ত ইনপুট নিতে পারে । সো অনায়াসে চোখ বন্ধ করে তুমি long long int অথবা Unsigned long integer ব্যবহার করতে পারো। সি তে long long int এবং Unsigned long integer এর ফরমেট স্পেছিফাইয়ার হল যথাক্রমে %lu এবং %lld ।
#include<bits/stdc++.h>
using namespace std;
int main()
{
unsigned long int a,b,m;
while(scanf("%lu%lu",&a,&b)==2)
{
if(b>a)
{
m=b-a;
cout<<m<<endl;
}
else
{
m=a-b;
cout<<m<<endl;
}
}
return 0;
}
No comments:
Post a Comment