Friday, July 31, 2015

Big integer-fibonacci (long range) .cpp file

//MD ASADUZZAMAN
//MBSTU(Dept of  IT)
#include<stdio.h>
#define lim 5001
#define len 1050
int fbn[lim][len];
void fibonacci()
{
    int i,j,k,sum;
    fbn[0][0]=0;
    fbn[1][0]=1;
    fbn[2][0]=1;
    for(i=3; i<lim; i++)
    {
        for(j=0; j<len; j++)
        {
            fbn[i][j]+=fbn[i-2][j]+fbn[i-1][j];
            if(fbn[i][j]>=10)
            {
                fbn[i][j+1]+=fbn[i][j]/10;
                fbn[i][j]%=10;
            }
        }
    }
}

int main()
{
    fibonacci();
    int n,i,j,k,lenth;
    while(scanf("%d",&n)==1)
    {
        for(i=len-1; i>0; i--)
        {
            if(fbn[n][i]!=0)break;
        }
        printf("The Fibonacci number for %d is ",n);
        for(; i>=0; i--)printf("%d",fbn[n][i]);
        printf("\n");
    }
    return 0;
}

Lightoj-1231 .cpp file

//MD ASADUZZAMAN
//MBSTU(Dept of  IT)
#include<bits/stdc++.h>
using namespace std;

const int m= 100000007;

int dp[21][1001], coin[50], cnt[50];

int main()
{
    int test, n, i, j, k, c;
    cin>>test;
     long cs=1;
    while(test--)
    {

        cin>>n>>k;
        for(i = 0; i < n; i++) cin>>coin[i];
        for(i = 0; i < n; i++) cin>>cnt[i];
        memset(dp, 0, sizeof dp);
        dp[0][0] = 1;
        for(i = 0; i < n; i++)
        {
            for(j = coin[i]; j <= k; j++)
            {
                for(c = 1; c <= cnt[i]; c++)
                {
                    dp[c][j] += dp[c-1][j-coin[i]];
                    if(dp[c][j] >= m) dp[c][j] %= m;
                }
            }
            for(j = coin[i]; j <= k; j++)
            {
                for(c = 1; c <= cnt[i]; c++)
                {
                    dp[0][j] += dp[c][j];
                    if(dp[0][j] >= m) dp[0][j] %= m;
                    dp[c][j] = 0;
                }
            }
        }
        printf("Case %ld: %d\n", cs++, dp[0][k]);
    }
    return 0;
}

Prime factorization .cpp file

//MD ASADUZZAMAN
//MBSTU(Dept of  IT)
#include <iostream>
#include <vector>
using namespace std;

typedef unsigned long long ull;

int main()
{
    ull N;
    while (cin >> N, N != 0)
    {
        ull b = N;

        vector<ull> fact;
        vector<int> pow;
        for (ull f = 2; f * f <= N; ++f)
        {
            int p = 0;
            while (N % f == 0)
            {
                ++p;
                N /= f;
            }
            if (p > 0)
            {
                fact.push_back(f);
                pow.push_back(p);
            }
        }
        if (N > 1)
        {
            fact.push_back(N);
            pow.push_back(1);
        }
       // ull C = 0;
        cout<<"1";
        for (int i = 0; i < fact.size(); ++i)
        {
          cout<<" X "<<fact[i];
        }
        cout<<endl;
        for (int i = 0; i < pow.size(); ++i)
        {
          cout<<pow[i]<<" ";
        }
        cout<<endl;
    }
    return 0;
}

Thursday, July 9, 2015

UVA - 113 .cpp file

//MD.ASADUZZAMAN
//MBSTU(IT-14053)
#include<stdio.h>
#include<math.h>
int main()
{
  double n,p;double s;
  while(scanf("%lf %lf",&n,&p)==2)
  {
     s=pow(p,1/n);
     printf("%.0lf\n",s);
  }
  return 0;
}

Wednesday, July 8, 2015

UVA - 102 .cpp file

//uva-100
//Md.Asaduzzaman
//MBSTU(IT-14053)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int b1,g1,c1,b2,g2,c2,b3,g3,c3,i,a[6],min;
while(cin>>b1>>g1>>c1>>b2>>g2>>c2>>b3>>g3>>c3)
    {
    a[0]=b2+b3+c1+c3+g1+g2;
    a[1]=b2+b3+c1+c2+g1+g3;
    a[2]=b1+b3+c2+c3+g1+g2;
    a[3]=b1+b2+c2+c3+g1+g3;
    a[4]=b1+b3+c1+c2+g3+g2;
    a[5]=b2+b1+c1+c3+g3+g2;
    for(i=0;i<6;i++)
        {
        if(i==0) min=a[i];
        else if(min>a[i]) min=a[i];
        }
    for(i=0;i<6;i++)
        {
        if(a[i]==min) {
                      if(i==0) cout<<"BCG ";
                      else if(i==1) cout<<"BGC ";
                      else if(i==2) cout<<"CBG ";
                      else if(i==3) cout<<"CGB ";
                      else if(i==4) cout<<"GBC ";
                      else if(i==5) cout<<"GCB ";
                      cout<<a[i]<<endl;
                      break;
                      }
        }
    }
return 0;

}

UVA - 100 .cpp file

//uva-100
//Md.Asaduzzaman
//MBSTU(IT-14053)
#include<stdio.h>
#include<map>
using namespace std;
int main()
{
    long long a,b,i,j,p,q,x,c;
    while(scanf("%lld%lld",&a,&b)==2)
    {
        printf("%lld %lld ",a,b);
        if(a==0&&b==0)
            break;
        if(a>b)
            swap(a,b);
        x=0;
        for(i=b;i>=a; i--)
        {
            p=i;
            c=1;
            while(p>1)
            {
                if(p%2==0)
                    p=p/2;
                else
                    p=3*p+1;
                c++;
            }
            if(c>=x)
                x=c;
        }
        printf("%lld\n",x);
    }
    return 0;
}