Tuesday, October 28, 2014

Download PDF Books of Database

> Book Name :  Database System Concepts


Writer :  Abraham Silberschatz, Henry E. Korth, S. Sudarshan
Edition :  6th
Download Link :  Click Here

Slide Download Link :  Click Here
Exercise Solution Download Link :  Click Here




Wednesday, August 27, 2014

ভার্ডিক্ট ইনফর্মেশন

কোন প্রোগ্রামের সোর্স কোড সাবমিট করার পর জাজ তোমার প্রোগ্রাম টি কয়েকটি ধাপে পরীক্ষা করে যে ফলাফল দিবে, তাই হল ভার্ডিক্ট (verdict)। তোমরা যারা সবে মাত্র প্রব্লেম সলভিং শুরু করেছ বা করবে তাদের শুরুতেই এই বিষয় টি জানা জরুরি যে কখন এবং কোন কারনে কোন ভার্ডিক্ট দেয়া হয়। তাহলে তোমরা সহজেই তোমাদের ভুল গুলো ধরতে পারবে।


Accepted : তোমার প্রোগ্রাম টি যদি নির্ধারিত সময় এবং মেমরি ব্যাবহার করে জাজ এর সবকটি ইনপুটের জন্য সঠিক অউটপুট দেয়, তবেই তুমি AC ভার্ডিক্ট পাবে।

Wrong Answer : তোমার প্রোগ্রাম টি যদি জাজ এর কোন এক বা একাধিক ইনপুটের জন্য সঠিক আউটপুট না দেয়, তাহলে তুমি WA ভার্ডিক্ট পাবে।

Presentation Error : তোমার প্রোগ্রামের সব আউটপুট ঠিক কিন্তু তুমি যদি তা সঠিক ভাবে উপস্থাপন করতে না পার, অর্থাৎ তোমার প্রোগ্রাম যদি অতিরিক্ত স্পেস অথবা নিউ-লাইন প্রিন্ট করে তাহলে তুমি PE ভার্ডিক্ট পাবে। তবে কিছু কিছু অনলাইন জাজে এটিকে WA হিসেবেও ধরা হয়।

Time Limit Exceeded : তোমার প্রোগ্রাম টি যদি এক্সিকিউট হতে প্রবলেমের নির্ধারিত সময়ের চেয়ে অতিরিক্ত সময় নেয় তাহলে TLE ভার্ডিক্ট দেয়া হয়।

Memory Limit Exceeded : প্রবলেম স্টেটমেন্টে দেয়া নির্ধারিত মেমরির চেয়ে তোমার প্রোগ্রাম টি বেশি মেমরি ব্যাবহার করে তাহলে MLE ভার্ডিক্ট দেয়া হয়।

Compilation Error : কম্পাইলার যদি তোমার প্রোগ্রাম টি সঠিক ভাবে কম্পাইল করতে না পারে তাহলে তুমি এই ভার্ডিক্ট পাবে। সাধারনত ভুল কম্পাইলার সিলেক্ট করলে, কোডে syntax error যেমন সেমি-কমা না দেয়া, ওপেনিং বা ক্লোজিং ব্র্যাকেট না দেয়া, কোন কি-ওয়ার্ডে বানান ভুল করা, ইত্যাদি ভুল থাকলে, void ফাংশন ব্যাতিত অন্য কোন ফাংশন থেকে কিছু রিটার্ন না করলে বা তোমার কোডে যদি এমন কিছু থাকে যা জাজের কম্পাইলার কম্পাইল করতে পারছে না তাহলে CE ভার্ডিক্ট দেয়া হয়।

Runtime Error : তোমার প্রোগ্রাম টি সঠিক ভাবে কম্পাইল করেছে কিন্তু এটি যদি নন-জিরো রিটার্ন করে টার্মিনেট হয় অথবা কোন সংখাকে শূন্য দ্বারা বিভাগ করে অথবা অ্যারে ওভারফ্লো, ভুল পয়েন্টার ব্যবহার, STL ব্যাবহারে অসাবধানতা, ইত্যাদি কারনে জাজ RE ভার্ডিক্ট দিয়ে থাকে।

Output Limit Exceeded : তোমার প্রোগ্রাম যদি অতিরিক্ত আউটপুট দিতে থাকে তাহলে OLE ভার্ডিক্ট দেয়া হয়। সাধারনত কোন কারনে যদি তোমার প্রোগ্রামের ইনফিনিট লুপ চলতে থাকে তাহলে এরকম সমস্যা হয়। 

Submission Error : তুমি যদি সঠিক ভাবে তোমার প্রোগ্রাম টি সাবমিট করতে না পার অথবা জাজ এর ইন্টার্নাল কোন ত্রুটির কারনে যদি তোমার প্রোগ্রাম টি সঠিক ভাবে সাবমিট না হয় তবে SE ভার্ডিক্ট দেয়া হয়।

Restricted Function : যদি জাজ মনেকরে যে তোমার প্রোগ্রামে এমন কোন ফাংশন আছে যা জাজিং সিস্টেমের ক্ষতি করতে পারে তাহলে RF ভার্ডিক্ট দেয়া হয়।




https://drive.google.com/file/d/0BxmaQHACFSwodmlRMGFxc0swQ3c/edit?usp=sharing



Monday, June 2, 2014

Download PDF Books of Algorithms

> Book Name :  Introduction to Algorithms



Writer :  Thomas H. Cormen
Edition :  3rd
Download Link :  Click Here




Sunday, March 2, 2014

UVa 10235 - Simply Emirp solution

Problem link :  UVa 10235 - Simply Emirp

Solution : 


#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<math.h>
#include<stdlib.h>
#include<string.h>
using namespace std;
int prime(long long int n)
{
    int i,j;
    if(n==1)
    return 0;

    if(n==2)
    return 1;

    if(n%2==0)
    return 0;

    int l=sqrt(n);

    for(i=3;i<=l;i+=2)
    {
        if(n%i==0)
        return 0;
    }
    return 1;
}
int main()
{
    long long int n,i,j,m,sum;
    while(scanf("%lld",&n)==1)
    {

        i=0; j=0; sum=0;

        if(prime(n))
            i=1;

        if(i==1)
        {
            m=n;

            while(m!=0)
            {
                sum=((sum*10)+(m%10));
                m/=10;
            }

            if(prime(sum))
            j=1;
        }

        if(j==1 && n!=sum)
            printf("%lld is emirp.\n",n);
        else if(i==1)
            printf("%lld is prime.\n",n);
        else
            printf("%lld is not prime.\n",n);
    }
    return 0;
}




UVa 10222 - Decode the Mad Man solution

Problem link :  UVa 10222 - Decode the Mad Man

Solution : 


#include<stdio.h>
#include<string.h>
int main()
{
    char a[10005];
    int i,l;
    while(gets(a))
    {
        l=strlen(a);
        for(i=0;i<l;i++)
        {
            if(a[i]==']')
                a[i]='p';
            else if(a[i]=='[')
                a[i]='o';
            else if(a[i]=='p' || a[i]=='P')
                a[i]='i';
            else if(a[i]=='o' || a[i]=='O')
                a[i]='u';
            else if(a[i]=='i' || a[i]=='I')
                a[i]='y';
            else if(a[i]=='u' || a[i]=='U')
                a[i]='t';
            else if(a[i]=='y' || a[i]=='Y')
                a[i]='r';
            else if(a[i]=='t' || a[i]=='T')
                a[i]='e';
            else if(a[i]=='r' || a[i]=='R')
                a[i]='w';
            else if(a[i]=='e' || a[i]=='E')
                a[i]='q';

            else if(a[i]=='\'')
                a[i]='l';
            else if(a[i]==';')
                a[i]='k';
            else if(a[i]=='l' || a[i]=='L')
                a[i]='j';
            else if(a[i]=='k' || a[i]=='K')
                a[i]='h';
            else if(a[i]=='j' || a[i]=='J')
                a[i]='g';
            else if(a[i]=='h' || a[i]=='H')
                a[i]='f';
            else if(a[i]=='g' || a[i]=='G')
                a[i]='d';
            else if(a[i]=='f' || a[i]=='F')
                a[i]='s';
            else if(a[i]=='d' || a[i]=='D')
                a[i]='a';

            else if(a[i]=='/')
                a[i]=',';
            else if(a[i]=='.')
                a[i]='m';
            else if(a[i]==',')
                a[i]='n';
            else if(a[i]=='m' || a[i]=='M')
                a[i]='b';
            else if(a[i]=='n' || a[i]=='N')
                a[i]='v';
            else if(a[i]=='b' || a[i]=='B')
                a[i]='c';
            else if(a[i]=='v' || a[i]=='V')
                a[i]='x';
            else if(a[i]=='c' || a[i]=='C')
                a[i]='z';

            else if(a[i]=='=')
                a[i]='0';
            else if(a[i]=='-')
                a[i]='9';
            else if(a[i]=='0')
                a[i]='8';
            else if(a[i]=='9')
                a[i]='7';
            else if(a[i]=='8')
                a[i]='6';
            else if(a[i]=='7')
                a[i]='5';
            else if(a[i]=='6')
                a[i]='4';
            else if(a[i]=='5')
                a[i]='3';
            else if(a[i]=='4')
                a[i]='2';
            else if(a[i]=='3')
                a[i]='1';
            else if(a[i]=='2')
                a[i]='`';
        }
        puts(a);
    }
    return 0;
}




UVa 10195 - The Knights Of The Round Table solution

Problem link :  UVa 10195 - The Knights Of The Round Table

Solution : 


#include<stdio.h>
#include<math.h>
int main()
{
    double a,b,c,i,r;
    while(scanf("%lf %lf %lf",&a,&b,&c)==3)
    {
        if(a<=0||b<=0||c<=0)
            printf("The radius of the round table is: 0.000\n");
        else
        {
            i=(a+b+c)/2;
            r=sqrt((i-a)*(i-b)*(i-c)/i);
            printf("The radius of the round table is: %.3lf\n",r);
        }
    }
    return 0;
}




UVa 10110 - Light more light solution

Problem link :  UVa 10110 - Light more light

Solution : 


#include<stdio.h>
#include<math.h>
int main()
{
    long long int n,a,i;
    while(scanf("%lld",&n)==1)
    {
        if(n==0)
            break;
        i=sqrt(n);
        a=i*i;
        if(a==n)
            printf("yes\n");
        else
            printf("no\n");
    }
    return 0;
}




UVa 10082 - WERTYU solution

Problem link :  UVa 10082 - WERTYU

Solution : 


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

char a[]={"`1234567890-=QWERTYUIOP[]\\ASDFGHJKL;'ZXCVBNM,./"};

char f(char c)
{
    for(int i=0;i<47;i++)
    {
        if(a[i]==c) return a[i-1];
    }
    return c;
}

int main()
{
    char s[10005];
    while(gets(s))
    {
        int l=strlen(s);
        for(int i=0;i<l;i++) s[i]=f(s[i]);
        puts(s);
    }
    return 0;
}



Tuesday, February 25, 2014

UVa 10079 - Pizza Cutting solution

Problem link :  UVa 10079 - Pizza Cutting

Solution : 


#include<stdio.h>
int main()
{
    long long int a,n;
    while(scanf("%lld",&n)==1)
    {
        if(n<0)
            break;
        a=1+((n*(n+1))/2);
        printf("%lld\n",a);
    }
    return 0;
}




UVa 10071 - Back to High School Physics solution

Problem link :  UVa 10071 - Back to High School Physics

Solution : 


#include<stdio.h>
int main()
{
    int v, t, d;
    while(scanf("%d%d", &v, &t)==2)
    {
        d=(v*(t*2));
        printf("%d\n", d);
    }
    return 0;
}


UVa 10055 - Hashmat the Brave Warrior solution

Problem link :  UVa 10055 - Hashmat the Brave Warrior

Solution : 


#include<stdio.h>
int main()
{
    long long a,b,c;
    while(scanf("%lld %lld",&a,&b)==2)
    {
        if(a>=b)
            c=a-b;
        else
            c=b-a;

        printf("%lld\n",c);
    }
    return 0;
}



UVa 10019 - Funny Encryption Method solution

Problem link :  UVa 10019 - Funny Encryption Method

Solution : 


#include<stdio.h>
int main()
{
    int n,m,a,b,i,t;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&n);
        m=n;
        a=0;
        while(m>0)
        {
            a+=m%2;
            m/=2;
        }

        b=0;
        while(n>0)
        {
            i=n%10;
            if(i==1||i==2||i==4||i==8)
                b++;
            else if(i==3||i==5||i==6||i==9)
                b+=2;
            else if(i==7)
                b+=3;
            n/=10;
        }
        printf("%d %d\n",a,b);
    }
    return 0;
}



UVa 10018 - Reverse and Add solution

Problem link :  UVa 10018 - Reverse and Add

Solution : 


#include<stdio.h>
long long rev(long long int n)
{
    long long int i;
    i=0;
    while(n>0)
    {
        i=(i*10)+(n%10);
        n=n/10;
    }
    return i;
}
int main()
{
    long long int a,b,m,t,tc;
    scanf("%lld",&tc);
    for(t=1;t<=tc;t++)
    {
        scanf("%lld",&a);

        m=0;
        b=rev(a);
        while(a!=b)
        {
            a=(a+b);
            b=rev(a);
            m++;
        }
        printf("%lld %lld\n",m,a);
    }
    return 0;
}



Saturday, February 22, 2014

Download PDF Books of Discrete Mathematics

> Book Name :   Discrete Mathematics and Its Applications


Writer :   Kenneth H. Rosen
Edition :   7th
Download link :   Click Here


> Book Name :   Schaum's Outline of Discrete Mathematics


Writer :   Seymour Lipschutz
Edition :  3rd
Download link :   Click Here


Friday, February 21, 2014

Download PDF Books of JAVA

> Book Name :   Java How to Program



Writer :  Paul Deitel, Harvey Deitel
Edition :  9th
Download link :  Click Here 


> Book Name :   Java: The Complete Reference



Writer :  Herbert Schildt
Edition :  7th
Download link :  Click Here

  
> Book Name :   Java 2: The Complete Reference



Writer :  Herbert Schildt
Edition :  5th
Download link :   Click Here 


> Book Name :   Programming with Java


Writer :   Balagurusamy
Edition :   3rd
Download link :   Click Here


> Book Name :   Introduction to JAVA Programming


Writer :  Y. Daniel Liang
Edition :  9th
Download link :  Click Here


Wednesday, February 19, 2014

Download PDF Books of C++

> Book Name :   Teach Yourself C++


Writer :   Herbert Schildt
Edition :   3rd
Download link :   Click Here


> Book Name :   C++: The Complete Reference



Writer :   Herbert Schildt
Edition :   3rd
Download link :   Click Here 


> Book Name :   The C++ Programming Language


Writer :   Bjarne Stroustrup
Edition :   4th
Download link :   Click Here


> Book Name :   C++ Language Tutorial


Writer :   cplusplus.com
Download link :   Click Here 


> Book Name :   Schaum's Outline of Programming with C++


Writer :   John R. Hubbard
Edition :   2nd
Download link :   Click Here 


> Book Name :   C++ How to Program

  
Writer :   Paul Deitel, Harvey Deitel
Edition :  8th
Download link :   Click Here 


> Book Name :   Beginning Programming with C++ for Dummies
 

 
Writer :   Stphen R. Davis
Download link :   Click Here




Saturday, February 8, 2014

ফ্ল্যাশ ড্রাইভে শর্টকাট ফাইল?

আমরা সাধারনত যারা পাবলিক কম্পিউটার (সাইবার ক্যাফে/শিক্ষা প্রতিষ্ঠানে সকলের ব্যাবহারিত কম্পিউটার) ব্যাবহার করি তারা সাধারানত একটি সমস্যার সম্মুখীন হই। সেটি হচ্ছে, কম্পিউটারে ফ্ল্যাশ ড্রাইভ কানেক্ট করার সাথেসাথে ড্রাইভের সব ফাইল গুলো শর্টকাট হয়ে যায়। কম্পিউটারে এক ধরনের ভাইরাস এর আক্রমণে এই সমস্যা সৃষ্টি করে। তখন আমরা ঐ ফাইল গুলকে ব্যাবহার করতে পারলেও মূল ফাইল গুলকে ফেরত আনতে পারিনা। ফলে আমাদের ঐ ফাইল গুলো হারাতে হয়। কিন্তু ফাইল গুলো ফেরত আনা সম্ভব।


প্রথম পদ্ধতি :

এজন্য প্রথমে আমাদের  Run  এ গিয়ে  'cmd' (Command Prompt) লিখে এন্টার চাপতে হবে। এখন আপনার ফ্ল্যাশ ড্রাইভ এর ‘ড্রাইভ লেটার’ টি লিখে এন্টার চাপুন (ড্রাইভ লেটার  G  হলে লিখতে হবে  'G:'   )। এখন নিচের লাইন টি লিখে এন্টার চাপুন...


Attrib  /S  /D  –R  –S  –H

এখন আপনার ফ্ল্যাশ ড্রাইভ টি ওপেন করে দেখুন আপনার মূল ফাইল গুলো এসে গেছে। মূল ফাইল গুলো একটি ফোল্ডার আকারেও আসতে পারে।



দ্বিতীয় পদ্ধতি : 

এজন্য প্রথমে আমাদের  Run  এ গিয়ে  ‘cmd’ (Command Prompt) লিখে এন্টার চাপতে হবে। এখন নিচের লাইন টি লিখে এন্টার চাপুন...


attrib  -h  -r  -s  /s  /d  g:\*.*

এখানে আপনার ফ্ল্যাশ ড্রাইভ এর ড্রাইভ লেটার যদি  'g'   এর পরিবরতে অন্য কিছু হয়, তাহলে সেটা পরিবর্তন করে দিন। এখন আপনার ফ্ল্যাশ ড্রাইভ টি ওপেন করে দেখুন আপনার মূল ফাইল গুলো এসে গেছে।