মঙ্গলবার, ৩০ আগস্ট, ২০১৬

UVA 10405 - Longest Common Subsequence

#include<cstdio>
#include<cstring>
#include<string>
#include<cmath>
#include<iostream>
#include<cctype>
#include<map>
#include<stack>
#include<cstdlib>
#include <queue>
#include <vector>
#include<algorithm>
#define ll long long
#define sc scanf
#define pf printf
#define Pi 2*acos(0.0)
using namespace std;
int n,m,lcs[2000][2000];
int main()
{
    string s1,s2;

    while(getline(cin,s1))
    {
        getline(cin,s2);
        n=s1.size();
        m=s2.size();
        for(int i=1;i<=n;i++)
            for(int j=1;j<=m;j++)
            {
                if(s1[i-1]==s2[j-1])
                lcs[i][j]=lcs[i-1][j-1]+1;
                else
                lcs[i][j]=max(lcs[i-1][j],lcs[i][j-1]);
            }
        cout<<lcs[n][m]<<endl;
    }
return 0;
}

UVA 10235 - Simply Emirp

#include<stdio.h>
main()
{
   long int a;
   while(scanf("%ld",&a)!=EOF)
   {
       long int i=2,j=0,k=0,p=0,h,v=a;
       while(a>i)
       {
           if(a%i==0)
           {
               j++;
           }
           i++;
           if(j==1)
            break;
       }
       if(j==1)
        printf("%ld is not prime.\n",a);
       else
       {
           while(a!=0)
            {
               i=a%10;
               a=a/10;
               p=(p*10)+i;
           }
           i=2,k=0;
           while(p>i)
           {
               if(p%i==0)
               {
                   k++;
               }
               i++;
               if(k==1)
                break;
           }
           if(v==p)printf("%ld is prime.\n",v);
           else if(k==1)
            printf("%ld is prime.\n",v);
            else
            printf("%ld is emirp.\n",v);
       }
   }
}

UVA 10222 - Decode the Mad man

#include<stdio.h>
#include<string.h>
main()
{
char s[100000]={0};
    while(gets(s))
    {
    long i,l=strlen(s);
    for(i=0;i<l;i++)
    {
    if(s[i]=='e' || s[i]=='E')printf("q");
    if(s[i]=='r' || s[i]=='R')printf("w");
    if(s[i]=='t' || s[i]=='T')printf("e");
if(s[i]=='y' || s[i]=='Y')printf("r");
if(s[i]=='u' || s[i]=='U')printf("t");
if(s[i]=='i' || s[i]=='I')printf("y");
if(s[i]=='o' || s[i]=='O')printf("u");
if(s[i]=='p' || s[i]=='P')printf("i");
if(s[i]=='[') printf("o");
if(s[i]==']') printf("p");
if(s[i]=='d' || s[i]=='D')printf("a");
if(s[i]=='f' || s[i]=='F')printf("s");
if(s[i]=='g' || s[i]=='G')printf("d");
if(s[i]=='h' || s[i]=='H')printf("f");
if(s[i]=='j' || s[i]=='J')printf("g");
if(s[i]=='k' || s[i]=='K')printf("h");
if(s[i]=='l' || s[i]=='L')printf("j");
if(s[i]==';')printf("k");
if(s[i]=='\'')printf("l");
if(s[i]=='c' || s[i]=='C')printf("z");
if(s[i]=='v' || s[i]=='V')printf("x");
if(s[i]=='b' || s[i]=='B')printf("c");
if(s[i]=='n' || s[i]=='N')printf("v");
if(s[i]=='m' || s[i]=='M')printf("b");
if(s[i]==',')printf("n");
if(s[i]=='.')printf("m");
if(s[i]==' ')printf(" ");
}
      printf("\n");
}

}

UVA 10189 - Minesweeper

#include<stdio.h>
#include<string.h>
#include<ctype.h>
main()
{
long int a,b,cnt=1;
while(scanf("%ld%ld",&a,&b)!=EOF)
{
char s[200][200]={0};
   long int i,j,k,count;
if(a==0 && b==0)
break;
else
{
for(i=0;i<a;i++)
{
scanf("%s",s[i]);
   }
   for(i=0;i<a;i++)
{
for(j=0;j<b;j++)
{
if(s[i][j]=='*')
continue;
else
s[i][j]='0';

}
   }
   for(i=0;i<a;i++)
{
for(j=0;j<b;j++)
{
if(s[i][j]=='*')
{
if(isdigit(s[i-1][j-1]))
   s[i-1][j-1]=s[i-1][j-1]+1;
if(isdigit(s[i-1][j]))
   s[i-1][j]=s[i-1][j]+1;
if(isdigit(s[i-1][j+1]))
   s[i-1][j+1]=s[i-1][j+1]+1;
if(isdigit(s[i][j-1]))
   s[i][j-1]=s[i][j-1]+1;
if(isdigit(s[i][j+1]))
   s[i][j+1]=s[i][j+1]+1;
if(isdigit(s[i+1][j-1]))
   s[i+1][j-1]=s[i+1][j-1]+1;
if(isdigit(s[i+1][j]))
   s[i+1][j]=s[i+1][j]+1;
if(isdigit(s[i+1][j+1]))
   s[i+1][j+1]=s[i+1][j+1]+1;
}
}
}

if(cnt>1)
            printf("\n");
            printf("Field #%ld:\n",cnt);
            cnt++;
for(i=0;i<a;i++)
{
for(j=0;j<b;j++)
{
printf("%c",s[i][j]);
}
printf("\n");
}
}

}


}

UVA 10168 - Summation of Four Primes

#include<bits/stdc++.h>
using namespace std;
long long visit[10000010]={0};
main()
{
      long long i,j;
      visit[1]=1;
      for(i=4;i<=10000000;i=i+2)
      {
            visit[i]=1;
      }
      for(i=3;i<=sqrt(10000000);i++)
      {
            if(visit[i]==0)
            for(j=i*i;j<=10000000;j=j+i)
            {
                  visit[j]=1;
            }
      }
      long long n;
      while(cin>>n)
      {
            long long rmn,i1;
            if(n<8)
            {
                  cout<<"Impossible.";
            }
            else
            {
            if(n%2==0)
            {
                  cout<<"2 2 ";
                  rmn=n-4;
            }
            else
            {
                  cout<<"2 3 ";
                  rmn=n-5;
            }
            for(i1=2;i1<=rmn;i1++)
            {
                  if(visit[i1]==0&&visit[rmn-i1]==0)
                  {
                        cout<<i1<<" "<<rmn-i1;
                        flag=1;
                        break;
                  }
            }
            if(flag==0)
            {
                  cout<<"Impossible.";
            }
            }
            cout<<endl;
      }
}

UVA 10161 - Ant on a Chessboard

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
using namespace std;
main()
{
long long int n;
while(scanf("%lld",&n)!=EOF)
{
if(n==0)
break;
else
{
long long r,k,k1,diff=0,x=0,y=0;
r=ceil(sqrt(n));
diff=(r*r)-n;
k=(2*r)-1;
k1=k/2;
if(r%2==1)
{
if(diff>k1)
{
x=r;
y=k-diff;
}
else
{
y=r;
x=diff+1;
}
}
else
{
if(diff>k1)
{
y=r;
x=k-diff;
}
else
{
x=r;
y=diff+1;
}
}
printf("%lld %lld\n",x,y);
}
}
}

UVA 10110 - Light, more light

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

UVA 10107 - What is the Median?

#include<stdio.h>
#include<algorithm>
using namespace std;
main()
{
long int n,a[100000]={0},i=0;
while(scanf("%ld",&n)!=EOF)
{
a[i]=n;
sort(a,a+i+1);
if(i%2==0)
{
printf("%ld\n",a[i/2]);
}
else
{
long k=i/2;
printf("%ld\n",(a[k]+a[k+1])/2);
}
i++;
}
}

UVA 10098 - Generating Fast

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
main()
{
   long int i,n;
   scanf("%ld",&n);
   getchar();
   for(i=1;i<=n;i++)
   {
        char s[10000]={0};
        gets(s);
        long l=strlen(s),j,k,k1;
        sort(s,s+l);
        do
        {
        printf("%s\n",s);
       
}
while(next_permutation(s,s+l));
printf("\n");
   }
}

UVA 10082 - WERTYU

#include<stdio.h>
int main()
{
    char c;
    while ( scanf("%c",&c)==1)
    {
        if (c=='1')printf("`");
        if (c=='2')printf("1");
        if (c=='3')printf("2");
        if (c=='4')printf("3");
        if (c=='5')printf("4");
        if (c=='6')printf("5");
        if (c=='7')printf("6");
        if (c=='8')printf("7");
        if (c=='9')printf("8");
        if (c=='0')printf("9");
        if (c=='-')printf("0");
        if (c=='=')printf("-");
        if (c=='W')printf("Q");
        if (c=='E')printf("W");
        if (c=='R')printf("E");
        if (c=='T')printf("R");
        if (c=='Y')printf("T");
        if (c=='U')printf("Y");
        if (c=='I')printf("U");
        if (c=='O')printf("I");
        if (c=='P')printf("O");
        if (c=='[')printf("P");
        if (c==']')printf("[");
        if (c=='\\')printf("]");
        if (c=='S')printf("A");
        if (c=='D')printf("S");
        if (c=='F')printf("D");
        if (c=='G')printf("F");
        if (c=='H')printf("G");
        if (c=='J')printf("H");
        if (c=='K')printf("J");
        if (c=='L')printf("K");
        if (c==';')printf("L");
        if (c=='\'')printf(";");
        if (c=='X')printf("Z");
        if (c=='C')printf("X");
        if (c=='V')printf("C");
        if (c=='B')printf("V");
        if (c=='N')printf("B");
        if (c=='M')printf("N");
        if (c==',')printf("M");
        if (c=='.')printf(",");
        if (c=='/')printf(".");
        if (c==' ')printf(" ");
        if (c=='\n')printf("\n");
    }
    return 0;
}

10079 - Pizza Cutting

#include<stdio.h>
main()
{
    long int n;
    while(scanf("%ld",&n)!=EOF)
    {
        long int i,sum=1;
        if(n<0)
            break;
        else
        {
            for(i=0;i<=n;i++)
            {
                sum=sum+i;
            }
            printf("%ld\n",sum);
        }
    }
}

UVA 10071 - Back to High School Physics

#include<stdio.h>
#include<math.h>
main()
{
    long long int n,m;

    while(scanf("%lld%lld",&n,&m)!=EOF)
    {
        printf("%lld\n",2*n*m);
    }

}

UVA 10070 - Leap Year or Not Leap Year and ...

#include<stdio.h>
#include<string.h>
int main()
{
    char a[100000]={0};
    long v=0;
    while(scanf("%s",a)!=EOF)
    {
        if(v!=0)
        printf("\n");
        v=1;
        long i,l,b,s=0,e=0,f=0,g=0,h=0,p=0;
        l=strlen(a);
        for(i=0;i<l;i++)
        {
            b=s*10+a[i]-48;
            s=b%4;
            b=e*10+a[i]-48;
            e=b%100;
            b=f*10+a[i]-48;
            f=b%400;
            b=g*10+a[i]-48;
            g=b%15;
            b=h*10+a[i]-48;
            h=b%55;
        }
        if(s==0&&(e!=0||f==0))
        {
            p=1;
            printf("This is leap year.\n");
        }
        if(g==0)
        {
            p=1;
            printf("This is huluculu festival year.\n");
        }
        if((s==0&&(e!=0||f==0))&&h==0)
        {
            p=1;
            printf("This is bulukulu festival year.\n");
        }
        if(p==0)
        printf("This is an ordinary year.\n");
    }
    return 0;
}

UVA 10050 - Hartals

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

int parties[101];
int main() {
    int i, j, t, n, p, count=0;
    scanf("%d",&t);
    while (t--) {
        scanf("%d",&n);
        scanf("%d",&p);
        for (i=0 ; i<p ; i++) {
            scanf("%d",&parties[i]);
        }
         count=0 ;
        for (i=1; i<=n ; i++)
         {
            if ((i%7)!=6 && (i%7)!=0)
              {
                for (j=0 ; j<p ; j++)
                {
                    if ((i%parties[j])==0)
                    {
                        count++;
                        break;
                    }
                }
            }
        }
        printf("%d\n",count);
    }
    return 0;
}

UVA 10055 - Hashmat the Brave Warrior

#include<stdio.h>
main()
{
    long a,b,c;
    while(scanf("%ld%ld",&a,&b)!=EOF)
    {
        if(b>a)
            {

        c=b-a;
        printf("%ld",c);
        }
        else
            {
                c=a-b;
        printf("%ld",c);
            }
        printf("\n");

    }

}

UVA 10041 - Vito's Family

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
main()
{
long int i,n;
scanf("%ld",&n);
for(i=1;i<=n;i++)
{
   long a,ar[10000]={0},sum1=0,sum,j,k,k1;
scanf("%ld",&a);
{
for(j=0;j<a;j++)
{
scanf("%ld",&ar[j]);
}
sort(ar,ar+a);
k1=a-1;
a=a/2;

for(k=0;k<a;k++)
{
sum=ar[k1]-ar[k];
k1--;
sum1=sum1+sum;
}
printf("%ld\n",sum1);
}
}
}

UVA 10038 - Jolly Jumpers

#include<stdio.h>
#include<algorithm>
using namespace std;
main()
{
long int i,n;
while(scanf("%ld",&n)!=EOF)
{
long ar[10000]={0},j,flag=0;
for(i=0;i<n;i++)
{
scanf("%ld",&ar[i]);
}
long k=0,diff,ar1[10000]={0},k1;
for(j=0;j<n-1;j++)
{
diff=ar[j]-ar[j+1];
if(diff<0)
{
diff=diff*-1;
ar1[k]=diff;
}
else
ar1[k]=diff;
k++;
}
sort(ar1,ar1+k);
for(j=k-1;j>=0;j--)
{
if(ar1[j]-ar1[j-1]!=1)
{
flag=1;
}
}
if(flag==1)
{
printf("Not jolly\n");
}
else
printf("Jolly\n");
}
}

সোমবার, ২৯ আগস্ট, ২০১৬

UVA 13055 - Inception

#include<bits/stdc++.h>
using namespace std;
main()
{
      long n,k=0;
     string s2[100];
      cin>>n;
      while(n--)
      {
            string s,s1;
            cin>>s;
            if(s=="Sleep")
            {
                  k++;
                  cin>>s1;
                  s2[k]=s1;
            }
            if(s=="Kick")
            {
                  if(k>0)
                  k--;
                  else
                        k=0;
            }
            if(s=="Test")
            {
                  if(k>0)
                  {
                        cout<<s2[k]<<endl;
                  }
                  else
                  {

                        cout<<"Not in a dream"<<endl;
                  }
            }
      }
}

UVA 10515 - Powers Et Al.

#include<bits/stdc++.h>
using namespace std;
main()
{
      string s,s1;
      while(cin>>s>>s1)
      {
            long long a,l=s.size(),l1=s1.size(),k,k1,b=0,i,sum;
            if(l==1&&l1==1&&s[0]=='0'&&s1[0]=='0')
            {
                  break;
            }
            else if(s1[0]=='0'&&l1==1)
            {
                  cout<<"1"<<endl;
                  continue;
            }
            a=s[l-1]-48;
            long long remind=0;
            for(i=0;i<l1;i++)
                  {
                        k=s1[i]-48;
                        remind=remind*10+k;
                        remind=remind%4;
                  }
                  //cout<<remind;
            if(a==0||a==1||a==5||a==6)
            cout<<a<<endl;
            else if(a==4)
            {
                  b=s1[l1-1]-48;
                  if(b%2==0)
                  {
                        cout<<"6"<<endl;
                  }
                  else
                        cout<<"4"<<endl;
            }
            else if(a==9)
            {
                  b=s1[l1-1]-48;
                  if(b%2==0)
                  {
                        cout<<"1"<<endl;
                  }
                  else
                        cout<<"9"<<endl;
            }
            else if(a==2)
            {
                  b=remind;
                  if(b==0)
                  {
                        cout<<"6"<<endl;
                  }
                  else if(b==1)
                        cout<<"2"<<endl;
                  else if(b==2)
                        cout<<"4"<<endl;
                  else if(b==3)
                        cout<<"8"<<endl;
            }
            else if(a==3)
            {b=remind;

                  if(b==0)
                  {
                        cout<<"1"<<endl;
                  }
                  else if(b==1)
                        cout<<"3"<<endl;
                  else if(b==2)
                        cout<<"9"<<endl;
                  else if(b==3)
                        cout<<"7"<<endl;
            }
            else if(a==7)
            {b=remind;

                  if(b==0)
                  {
                        cout<<"1"<<endl;
                  }
                  else if(b==1)
                        cout<<"7"<<endl;
                  else if(b==2)
                        cout<<"9"<<endl;
                  else if(b==3)
                        cout<<"3"<<endl;
            }
            else if(a==8)
            {b=remind;

                  if(b==0)
                  {
                        cout<<"6"<<endl;
                  }
                  else if(b==1)
                        cout<<"8"<<endl;
                  else if(b==2)
                        cout<<"4"<<endl;
                  else if(b==3)
                        cout<<"2"<<endl;
            }
      }
}

রবিবার, ২৮ আগস্ট, ২০১৬

Impotant Topics

Bitwise operations in C: Part 1:-


http://zobayer.blogspot.com/2009/12/bitwise-operations-in-cc-part-1.html

Bitwise operations in C: Part 2:-


http://zobayer.blogspot.com/2009/12/bitwise-operations-in-c-part-2.html

Bitwise operations in C: Part 3:-


http://zobayer.blogspot.com/2009/12/bitwise-operations-in-c-part-3.html

RECURSION:-

https://sites.google.com/site/smilitude/tutorials

UVA 10035 - Primary Arithmetic

#include<stdio.h>
main()
{
    long int a,b;
    while(scanf("%ld%ld",&a,&b)!=EOF)
    {
        long int i,j,k,l=0,carry=0;
        if(a==0 && b==0)
            break;
        while(a!=0 || b!=0)
            {
                i=(a%10);
                j=(b%10);
                a=a/10;
                b=b/10;
                k=(i+j+carry);
                if(k>9)
                {
                    carry=1;
                    l++;

                }
                else
                carry=0;

            }
            if(l==0)
                    {
                        printf("No carry operation.\n");

                    }
                    if(l==1)
                    {
                        printf("1 carry operation.\n");
                    }
                    if(l>1)
                    {
                        printf("%ld carry operations.\n",l);
                    }
    }
}

UVA 10019 - Funny Encryption Method

#include<stdio.h>
#include<math.h>
main()
{
long i,c;
scanf("%ld",&c);
for(i=1;i<=c;i++)
{
long a;
scanf("%ld",&a);
long a1[10000]={0},k=0,sum=0,b=a,b1[10000]={0},k1=0;
long k2=0,sum3=0,a2[10000]={0};
long j,sum1=0;
long sum2=0;
while(a!=0)
{
a1[k]=a%2;
sum=sum+a1[k];
a=a/2;
k++;
}
while(b!=0)
{
b1[k1]=b%10;
b=b/10;
k1++;

}
for(j=k1-1;j>=0;j--)
{
sum2=b1[j]*(pow(16,j)+.0000001);
sum1=sum1+sum2;
}

while(sum1!=0)
{
a2[k2]=sum1%2;
sum3=sum3+a2[k2];
sum1=sum1/2;
k2++;
}
printf("%ld %ld\n",sum,sum3);
}
}

UVA 10018 - Reverse and Add

#include<stdio.h>
main()
{
    long int j,c;
    scanf("%ld",&c);
    for(j=1;j<=c;j++)
    {
        long int a,b,sum=0,h=0,c,i;
        scanf("%ld",&a);
            b=a;
            while(b!=sum)
                {
                    //printf("%ld %ld\n",b,sum);
            sum=0;
            while(a!=0)
                {
                    i=a%10;
                    a=a/10;
                    sum=(sum*10)+i;
                }
                //h++;
                if(b!=sum)
                {
                c=b+sum;
                //printf("%ld %ld\n",b,sum);
                a=c;
                b=a;
                }
                h++;
                //printf("%ld\n",h);
                }
              printf("%ld %ld\n",h-1,b);
    }
}

UVA 10014 - Simple calculations

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
double c,d,ar[40000]={0};
long b;
main()
{  
    long a,i;
cin>>a;
while(a--)
{
double sum=0,sum1=0,rslt=0;
long j;
cin>>b;
cin>>c>>d;
sum1=b*c+d;
for(j=1;j<=b;j++)
{
cin>>ar[j];

}
for(j=1;j<=b;j++)
{
sum=sum+(ar[j]*(b-j+1));
}
rslt=sum1-(2*sum);
rslt=rslt/(b+1);
printf("%.2lf\n",rslt);
if(a)
        printf("\n");
}
}


UVA 10013 - Super long sums

#include<stdio.h>
long long a[1000010]={0},b[1000010]={0},a1[1000010]={0};
main()
{
long int i,n,count=0;
scanf("%ld",&n);
for(i=1;i<=n;i++)
{
if(count>0)
        printf("\n");
        count=1;
long long a2,j,k=0,j1,j2;
scanf("%lld",&a2);
for(j=0;j<a2;j++)
{
scanf("%lld%lld",&a[j],&b[j]);
}
long long sum=0;

for(j1=a2-1;j1>=0;j1--)
{
sum=sum+a[j1]+b[j1];
a1[k]=sum%10;
sum=sum/10;
k++;
}
for(j2=k-1;j2>=0;j2--)
{
printf("%lld",a1[j2]);
}
printf("\n");

}
}

UVA 1585 - Score

#include<stdio.h>
#include<string.h>
main()
{
char s[10000]={0};
long j,a;
scanf("%ld",&a);
for(j=1;j<=a;j++)
{
scanf("%s",s);
long i,l,count=0,sum=0;
l=strlen(s);
for(i=0;i<l;i++)
{
if(s[i]=='O')
{
count++;
sum=sum+count;
}
else
{
sum=sum;
count=0;
}
}
printf("%ld\n",sum);
}

{

}
}

UVA 1124 - Celebrity jeopardy

# include <stdio.h>
int main()
{
    char str[50];
    while(gets(str))
        puts(str);
   
}

UVA 913 - Joana and the Odd Numbers

#include<stdio.h>
main()
{
long int n;
while(scanf("%ld",&n)!=EOF)
{
long int k;
k=n*(n+2);
k=k/2;
k=3*k-6;
printf("%ld\n",k);
}
}

UVA 900 - Brick Wall Patterns

#include<stdio.h>
main()
{
    long int n;
    while(scanf("%ld",&n)!=EOF)
    {
        if(n==0)
            break;
        long int i,a=0,b=1,c;
        for(i=1;i<=n;i++)
        {
            c=a+b;
            a=b;
            b=c;
        }
        printf("%ld\n",c);
    }
}

UVA 713 - Adding Reversed Numbers

#include<stdio.h>
#include<string.h>
main()
{
long int tst,cas;
scanf("%ld",&cas);
for(tst=1;tst<=cas;tst++)
{
char a[100000]={0},s[100000]={0};
long b[100000]={0},c[100000]={0};
scanf("%s%s",a,s);
{
long l1=strlen(a);
long l2=strlen(s);

if(l2>l1)
{
l1=l2;
}
long i,j,k,dif,i1=0,j1=0,carry=0,s1,a1;
for(i=0;i<l1;i++)
{
//printf("%c %c ",a[i],s[i]);
if(a[i]=='\0')
{
a1=0;
}
else
a1=a[i]-48;
if(s[i]=='\0')
{
s1=0;
}
else
{
s1=s[i]-48;
}

long c=a1+s1+carry;
if(c>9)
{
carry=1;
}
else
carry=0;
//printf("%ld\n%ld\n",c,carry);
b[i1++]=c%10;
//printf("%ld ",b[i1-1]);
}
if(carry!=0)
{
b[i1++]=1;
}
long flag=0,flag1=0;
long t=0;
while(b[t]==0)
t++;
for(i=t;i<i1;i++)
{
printf("%ld",b[i]);
}
printf("\n");
}
}
}

UVA 694 - The Collatz Sequence

#include<stdio.h>
main()
{
    long long int n,m,i=0;
    while(scanf("%lld%lld",&n,&m)!=EOF)
    {
        long long int k=1,l,p=n,q=m;

        if(n<0 && m<0)
            break;
        if(n>m)
        {
         l=m;
         m=n;
         n=l;
        }
        {
        while(n!=1)
        {
                if(n%2==0)
            {
                n=n/2;
                {
                if(n>m)
                    break;
                }
            }
            else
            {
                n=(3*n)+1;
                {
                    if(n>m)
                    break;

                }
            }
             k++;
            }

        }
        i++;
        printf("%lld",i);
       printf("Case %lld: A = %lld, limit = %lld, number of terms = %lld\n",i,p,q,k);
    }

}

UVA 686 - Goldbach's Conjecture (II)

#include<bits/stdc++.h>
using namespace std;
main()
{
      long long i,j,visit[100000]={0},k;
      //for(i=4;i<=32770;i=i+2)
      {
            //visit[i]==1;
      }
      for(i=2;i<=32770;i++)
      {
            for(j=2;j<=sqrt(i);j++)
            {
                  if(i%j==0)
                  {
                        visit[i]=1;
                        break;
                  }
            }
      }
      visit[1]=1;
      long long n;
      while(cin>>n)
      {
            if(n==0)
                  break;
            long long cnt=0;
            for(i=2;i<=n/2;i++)
            {
                  if(visit[i]==0)
                  {
                        k=n-i;
                        if(visit[k]==0)
                        {
                              cnt++;
                        }
                  }
            }
            cout<<cnt<<endl;
      }

}

UVA 583 - Prime Factors

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
main()
{
long int a;
while(scanf("%ld",&a)!=EOF)
{
if(a==0)
break;
else if(a<0)
{
printf("%ld = -1 x",a);
a=a*-1;
}
else if(a>0)
{
printf("%ld =",a);
}
long k=0,i,j,ar[10000]={0};
for(i=2;i<=sqrt(a);i++)
{
while(a%i==0)
{
ar[k]=i;
k++;
a=a/i;
}
}
ar[k]=a;
        if(ar[k]==1)k--;
printf(" %ld",ar[0]);
for(j=1;j<=k;j++)
{
printf(" x %ld",ar[j]);
}
printf("\n");
}
}

UVA 591 - Box of Bricks

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
main()
{
long int n,count=1;
while(scanf("%ld",&n)!=EOF)
{
long j,total=0,rslt,rslt1=0,rslt2=0,k,a[10000]={0};
if(n==0)
break;
else
{
for(j=0;j<n;j++)
{
scanf("%ld",&a[j]);
total=total+a[j];
}
rslt=total/n;
for(k=0;k<n;k++)
{
if(a[k]>rslt)
{
rslt2=rslt2+(a[k]-rslt);
}
}
}
printf("Set #%ld\nThe minimum number of moves is %ld.\n\n",count,rslt2);
count++;
}
}


UVA 575 - Skew Binary

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
main()
{
char s[100000]={0};
while(gets(s))
{
long long l=strlen(s);
long long i,j=l,k,sum1=0,sum=0;
if(l==1 && s[0]==48)
break;
else

{
for(i=0;i<l;i++)
{
   long long a=pow(2,j)-1;
   sum=(s[i]-48)*a;
sum1=sum1+sum;
j--;
}
printf("%ld\n",sum1);
}

}
}

UVA 543 - Goldbach's Conjecture

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
long int visit[1000000]={0},a11[1000000]={0};
main()
{

{
long int i,j,p;
        long int a,a1;
   long int n;
            p=sqrt(1000000);
            visit[1]=1;
           for(i=3;i<=p;i=i+2)
            {
   if(visit[i]==0)
                 {
       for(j=i+i;j<=1000000;j=j+i)
                    visit[j]=1;
    }
            }
            long int j1,j2,k=0;
            for(j1=3;j1<1000000;j1=j1+2)
              {

           if(visit[j1]==0)
           {
    a11[k]=j1;
 k++;
   }
         }
 //printf("%ld",k);
}
long int i1,i2,c1,c2,n;
while(scanf("%ld",&n)!=EOF)
{
if(n==0)
break;
for(i1=0;i1<=n/2;i1++)
{
c1=n-a11[i1];
if(visit[c1]==0)
{
printf("%ld = %ld + %ld\n",n,a11[i1],c1);
break;
}
}
}


}

UVA 541 - Error Correction

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
main()
{
long int a;
while(scanf("%ld",&a)!=EOF)
{
long int ar[100][100],i,j,k,n,m,sum,count=0,count1=0,sum1;
if(a==0)
break;
for(i=0;i<a;i++)
{
for(j=0;j<a;j++)
{
scanf("%ld",&ar[i][j]);
//printf("%ld",ar[i][j]);
  }
}
for(i=0;i<a;i++)
{
sum=0;
for(j=0;j<a;j++)
{
sum=sum+ar[i][j];

   }
   if(sum%2!=0)
   {
    count++;
   n=i+1;
   }
   //printf("%ld\n",sum);
}
for(j=0;j<a;j++)
{
sum1=0;
for(i=0;i<a;i++)
{
sum1=sum1+ar[i][j];

   }
   if(sum1%2!=0)
   {
    count1++;
m=j+1;
}
   //printf("%ld\n",sum1);

}
if(count==0 && count1==0)
{
printf("OK\n");
}
else if(count==1 && count1==1)
{
printf("Change bit (%ld,%ld)\n",n,m);

}
else
printf("Corrupt\n");
//printf("%ld\n",count);
//printf("%ld\n",count1);
}
}

UVA 494 - Kindergarten Counting Game

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
main()
{
    char a[10000];
    long i,l;
    while(gets(a))
    {
        long count=0;
        l=strlen(a);
        for(i=0;i<l;i++)
        {
        //printf("%c",a[i]);
            if(((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z'))&&((a[i+1]<'A'||a[i+1]>'Z')&&(a[i+1]<'a'||a[i+1]>'z')))
            {
                count++;
            }
        }
       printf("%ld\n",count);
    }
    return 0;
}

UVA 492 - Pig-Latin

///...................SUBHASHIS MOLLICK....................///
///.....DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING....///
///.............ISLAMIC UNIVERSITY,BANGLADESH.............///
///.....................SESSION-(14-15)....................///
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<ctype.h>
#include<bits/stdc++.h>
using namespace std;
main()
main()
{
char s[1000000]={0}, a[10000]={0};
while(gets(s))
{
long i,j,k1=0,k;
   long l=strlen(s);
   for(k=0;k<l;k++)
   {

    if(s[k]=='e' || s[k]=='o' || s[k]=='i' || s[k]=='u' || s[k]=='A' || s[k]=='E' || s[k]=='I' || s[k]=='O' || s[k]=='U' ||s[k]=='a')
{
for(i=k;i<=l;i++)
       {
       if(s[i]=='e' || s[i]=='o' || s[i]=='i' || s[i]=='u' || s[i]=='A' || s[i]=='E' || s[i]=='I' || s[i]=='O' || s[i]=='U' ||s[i]=='a'|| s[i]=='b' || s[i]=='c'  || s[i]=='d' || s[i]=='f' || s[i]=='g' || s[i]=='h' || s[i]=='j' || s[i]=='k' ||s[i]=='l' || s[i]=='m' ||s[i]=='n'|| s[i]=='p' || s[i]=='q' || s[i]=='r' || s[i]=='s' || s[i]=='t' || s[i]=='v' || s[i]=='w' || s[i]=='x' ||s[i]=='z'|| s[i]=='B' || s[i]=='C' || s[i]=='D' || s[i]=='F' || s[i]=='G' || s[i]=='H' || s[i]=='J' || s[i]=='K' || s[i]=='L' ||s[i]=='M' || s[i]=='N'  || s[i]=='P' || s[i]=='Q' || s[i]=='R' || s[i]=='S' || s[i]=='T' || s[i]=='V'|| s[i]=='W' || s[i]=='X' ||s[i]=='Z' || s[i]=='y' || s[i]=='Y')
               printf("%c",s[i]);
           else
   {
    printf("ay");
    k=i-1;
    break;
}
   }
}
else if(s[k]=='e' || s[k]=='o' || s[k]=='i' || s[k]=='u' || s[k]=='A' || s[k]=='E' || s[k]=='I' || s[k]=='O' || s[k]=='U' ||s[k]=='a'|| s[k]=='b' || s[k]=='c'  || s[k]=='d' || s[k]=='f' || s[k]=='g' || s[k]=='h' || s[k]=='j' || s[k]=='k' ||s[k]=='l' || s[k]=='m' ||s[k]=='n'|| s[k]=='p' || s[k]=='q' || s[k]=='r' || s[k]=='s' || s[k]=='t' || s[k]=='v' || s[k]=='w' || s[k]=='x' ||s[k]=='z'|| s[k]=='B' || s[k]=='C' || s[k]=='D' || s[k]=='F' || s[k]=='G' || s[k]=='H' || s[k]=='J' || s[k]=='K' || s[k]=='L' ||s[k]=='M' || s[k]=='N'  || s[k]=='P' || s[k]=='Q' || s[k]=='R' || s[k]=='S' || s[k]=='T' || s[k]=='V'|| s[k]=='W' || s[k]=='X' ||s[k]=='Z' || s[k]=='y' || s[k]=='Y')
{
for(i=k+1;i<=l;i++)
       {

       if(s[i]=='e' || s[i]=='o' || s[i]=='i' || s[i]=='u' || s[i]=='A' || s[i]=='E' || s[i]=='I' || s[i]=='O' || s[i]=='U' ||s[i]=='a'|| s[i]=='b' || s[i]=='c'  || s[i]=='d' || s[i]=='f' || s[i]=='g' || s[i]=='h' || s[i]=='j' || s[i]=='k' ||s[i]=='l' || s[i]=='m' ||s[i]=='n'|| s[i]=='p' || s[i]=='q' || s[i]=='r' || s[i]=='s' || s[i]=='t' || s[i]=='v' || s[i]=='w' || s[i]=='x' ||s[i]=='z'|| s[i]=='B' || s[i]=='C' || s[i]=='D' || s[i]=='F' || s[i]=='G' || s[i]=='H' || s[i]=='J' || s[i]=='K' || s[i]=='L' ||s[i]=='M' || s[i]=='N'  || s[i]=='P' || s[i]=='Q' || s[i]=='R' || s[i]=='S' || s[i]=='T' || s[i]=='V'|| s[i]=='W' || s[i]=='X' ||s[i]=='Z' || s[i]=='y' || s[i]=='Y')
               printf("%c",s[i]);
           else
   {
    printf("%c",s[k]);
    printf("ay");
    k=i-1;
    break;
}
   }
}
else
            printf("%c",s[k]);
}
printf("\n");
}

}

Factory Pattern

Factory Method  is a creational design pattern that provides an interface for creating objects in a superclass but allows subclasses to alte...