Thursday, September 4, 2014

UVa Solution 11559 - Event Planning

#include<cstdio>
#include<cmath>
#include<cstring>
#include<iostream>
using namespace std;

int main()
{
    int n, b, h, w, p, cost, i, j, temp, a;
    while(scanf("%d%d%d%d", &n, &b, &h, &w)==4)
    {
        cost=b+100;
        for(i=0; i<h; i++)
        {
            scanf("%d", &p);
            temp=0;
            for(j=0; j<w; j++)
            {
                scanf("%d", &a);
                if(a>=n)
                {
                    temp=p*n;
                    if(cost>temp)
                    {
                        cost=temp;
                    }
                }
            }
        }
        if(cost<b)
        {
            printf("%d\n",cost);
        }
        else
        {
            printf("stay home\n");
        }
    }
}

Wednesday, September 3, 2014

UVa Solution 12468 - Zapping

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;

int main()
{
    int a, b, change, change1, change2;
    while(scanf("%d%d", &a, &b)==2)
    {
        if(a==-1 && b==-1)
        {
            break;
        }
        if(a>=b)
        {
            change1=(100-a)+b;
            change2=a-b;
            if(change1>change2)
            {
                change=change2;
            }
            else
            {
                change=change1;
            }
        }
        if(b>a)
        {
            change1=((100-b)+a);
            change2=b-a;
            if(change1>change2)
            {
                change=change2;
            }
            else
            {
                change=change1;
            }
        }
        printf("%d\n", change);
    }
}

Monday, September 1, 2014

UVa Solution 12626 - I ❤ Pizza

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;

int main()
{
    string s;
    int i, test, len, count;
    int countM, countA, countR, countG, countI, countT;
    scanf("%d", &test);
    while(test--)
    {
        cin >> s;
        len=s.length();
        countM = countA = countR = countG = countI = countT =0;
        for(i=0; i<len; i++)
        {
            if(s[i]=='M')
            {
                countM++;
            }
            if(s[i]=='A')
            {
                countA++;
            }
            if(s[i]=='R')
            {
                countR++;
            }
            if(s[i]=='G')
            {
                countG++;
            }
            if(s[i]=='I')
            {
                countI++;
            }
            if(s[i]=='T')
            {
                countT++;
            }
        }
        count=0;
        while(1)
        {
            if(countA>=3 && countR>=2 && countG>=1 && countI>=1 && countT>=1 && countM>=1)
            {
                count=count+1;
                countA=countA-3;
                countR=countR-2;
                countG=countG-1;
                countI=countI-1;
                countT=countT-1;
                countM=countM-1;
            }
            else
            {
                break;
            }
        }
        printf("%d\n", count);
    }
    return 0;
}

UVa Solution 10340 - All in All

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;

int main()
{
    string s, t;
    int i, j, len_s, len_t, temp;
    while(cin >> s >> t)
    {
        len_s=s.length();
        len_t=t.length();
        temp=0;
        for(i=0; i<len_s; i++)
        {
            for(j=0; j<len_t; j++)
            {
                if(s[i]==t[j])
                {
                    temp=temp+1;
                    i++;
                }
            }
        }
        if(temp==len_s)
        {
            printf("Yes\n");
        }
        else
        {
            printf("No\n");
        }
    }
    return 0;
}

Friday, August 29, 2014

UVa Solution 10714 - Ants

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;

int main()
{
    int test, len, num, pos, min, max, sub;
    scanf("%d", &test);
    while(test--)
    {
        scanf("%d%d", &len, &num);
        min = max = 0;
        while(num--)
        {
            scanf("%d", &pos);
            sub = (len-pos);
            if(sub>=pos)
            {
                if(max<sub)
                {
                    max=sub;
                }
                if(min<pos)
                {
                    min=pos;
                }
            }
            if(sub<pos)
            {
                if(max<pos)
                {
                    max=pos;
                }
                if(min<sub)
                {
                    min=sub;
                }
            }
        }
        printf("%d %d\n", min, max);
    }
    return 0;
}


Friday, August 22, 2014

C/C++ Code for Ternary Search

#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;


int main()
{
    int i, n, val, low, high, mid1, mid2, a[50];
    printf("Enter the size of an array : ");
    scanf("%d", &n);
    printf("Enter the elements : ");

    for(i=0; i<n; i++)
    {
        scanf("%d", &a[i]);
    }
    sort(a, a+n);
    printf("The sorted array is : ");
    for(i=0; i<n; i++)
    {
        printf("%d ", a[i]);
    }
    printf("\n");

    printf("Enter the element which you want to search : ");
    scanf("%d", &val);
    low=0;
    high=n-1;

    while(low<=high)
    {
        mid1=((low+high)/2);
        mid2=(mid1*2);

        if(val==a[mid1])
        {
            printf("Position is : %d.\n", mid1+1);
            break;
        }
        else if(a[mid1]>val)
        {
            high=mid1-1;
        }
        else if(val==a[mid2])
        {
            printf("Position is : %d.\n", mid2+1);
            break;
        }
        else if(a[mid2]<val)
        {
             low=mid2+1;
        }
        else
        {
            low=mid1+1;
            high=mid2-1;
        }
    }
    return 0;
}

C/C++ Code for Finite State Machines (Finite Automata and String Matching)

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;

void Divisible_By_Three()
{
    char c;
    int s=0;
    cout << "Enter Your string : ";
    while(cin.get(c))
    {
        if(c=='\n')
        {
            break;
        }
        if(s==0)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==1)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=0;
            }
        }
        else if(s==2)
        {
            if(c=='0')
            {
                s=1;
            }
            else if(c=='1')
            {
                s=2;
            }
        }
    }
    if(s==0)
    {
        cout << "Divisible by 3" << endl;
    }
    else
    {
        cout<< "Not Divisible by 3" << endl;
    }
    cout << "Enter your Divisor: ";
}


void Divisible_By_Four()
{
    char c;
    int s=0;
    cout << "Enter Your string : ";
    while(cin.get(c))
    {
        if(c=='\n')
        {
            break;
        }
        if(s==0)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==1)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==2)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }

        else if(s==3)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
    }
    if(s==0)
    {
        cout << "Divisible by 4" << endl;
    }
    else
    {
        cout<< "Not Divisible by 4" << endl;
    }
    cout << "Enter your Divisor: ";
}

void Divisible_By_Five()
{
    char c;
    int s=0;
    cout << "Enter Your string : ";
    while(cin.get(c))
    {
        if(c=='\n')
        {
            break;
        }
        if(s==0)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==1)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==2)
        {
            if(c=='0')
            {
                s=4;
            }
            else if(c=='1')
            {
                s=0;
            }
        }
        else if(s==3)
        {
            if(c=='0')
            {
                s=1;
            }
            else if(c=='1')
            {
                s=2;
            }
        }
        else if(s==4)
        {
            if(c=='0')
            {
                s=3;
            }
            else if(c=='1')
            {
                s=4;
            }
        }
    }
    if(s==0)
    {
        cout << "Divisible by 5" << endl;
    }
    else
    {
        cout<< "Not Divisible by 5" << endl;
    }
    cout << "Enter your Divisor: ";
}

void Divisible_By_Six()
{
    char c;
    int s=0;
    cout << "Enter Your string : ";
    while(cin.get(c))
    {
        if(c=='\n')
        {
            break;
        }
        if(s==0)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==1)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==2)
        {
            if(c=='0')
            {
                s=4;
            }
            else if(c=='1')
            {
                s=5;
            }
        }
        else if(s==3)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==4)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==5)
        {
            if(c=='0')
            {
                s=4;
            }
            else if(c=='1')
            {
                s=5;
            }
        }
    }
    if(s==0)
    {
        cout << "Divisible by 6" << endl;
    }
    else
    {
        cout<< "Not Divisible by 6" << endl;
    }
    cout << "Enter your Divisor: ";
}

void Divisible_By_Seven()
{
    char c;
    int s=0;
    cout << "Enter Your string : ";
    while(cin.get(c))
    {
        if(c=='\n')
        {
            break;
        }
        if(s==0)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==1)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==2)
        {
            if(c=='0')
            {
                s=4;
            }
            else if(c=='1')
            {
                s=5;
            }
        }
        else if(s==3)
        {
            if(c=='0')
            {
                s=6;
            }
            else if(c=='1')
            {
                s=0;
            }
        }
        else if(s==4)
        {
            if(c=='0')
            {
                s=1;
            }
            else if(c=='1')
            {
                s=2;
            }
        }
        else if(s==5)
        {
            if(c=='0')
            {
                s=3;
            }
            else if(c=='1')
            {
                s=4;
            }
        }
        else if(s==6)
        {
            if(c=='0')
            {
                s=5;
            }
            else if(c=='1')
            {
                s=6;
            }
        }
    }
    if(s==0)
    {
        cout << "Divisible by 7" << endl;
    }
    else
    {
        cout<< "Not Divisible by 7" << endl;
    }
    cout << "Enter your Divisor: ";
}

void Divisible_By_Eight()
{
    char c;
    int s=0;
    cout << "Enter Your string : ";
    while(cin.get(c))
    {
        if(c=='\n')
        {
            break;
        }
        if(s==0)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==1)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==2)
        {
            if(c=='0')
            {
                s=4;
            }
            else if(c=='1')
            {
                s=5;
            }
        }
        else if(s==3)
        {
            if(c=='0')
            {
                s=6;
            }
            else if(c=='1')
            {
                s=7;
            }
        }
        else if(s==4)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==5)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==6)
        {
            if(c=='0')
            {
                s=4;
            }
            else if(c=='1')
            {
                s=5;
            }
        }
        else if(s==7)
        {
            if(c=='0')
            {
                s=6;
            }
            else if(c=='1')
            {
                s=7;
            }
        }
    }
      if(s==0)
    {
        cout << "Divisible by 8" << endl;
    }
    else
    {
        cout<< "Not Divisible by 8" << endl;
    }
    cout << "Enter your Divisor: ";
}

void Divisible_By_Nine()
{
    char c;
    int s=0;
    cout << "Enter Your string : ";
    while(cin.get(c))
    {
        if(c=='\n')
        {
            break;
        }
        if(s==0)
        {
            if(c=='0')
            {
                s=0;
            }
            else if(c=='1')
            {
                s=1;
            }
        }
        else if(s==1)
        {
            if(c=='0')
            {
                s=2;
            }
            else if(c=='1')
            {
                s=3;
            }
        }
        else if(s==2)
        {
            if(c=='0')
            {
                s=4;
            }
            else if(c=='1')
            {
                s=5;
            }
        }
        else if(s==3)
        {
            if(c=='0')
            {
                s=6;
            }
            else if(c=='1')
            {
                s=7;
            }
        }
        else if(s==4)
        {
            if(c=='0')
            {
                s=8;
            }
            else if(c=='1')
            {
                s=0;
            }
        }
         else if(s==5)
        {
            if(c=='0')
            {
                s=1;
            }
            else if(c=='1')
            {
                s=2;
            }
        }
         else if(s==6)
        {
            if(c=='0')
            {
                s=3;
            }
            else if(c=='1')
            {
                s=4;
            }
        }
        else if(s==7)
        {
            if(c=='0')
            {
                s=5;
            }
            else if(c=='1')
            {
                s=6;
            }
        }
        else if(s==8)
        {
            if(c=='0')
            {
                s=7;
            }
            else if(c=='1')
            {
                s=8;
            }
        }
    }
    if(s==0)
    {
        cout << "Divisible by 9" << endl;
    }
    else
    {
        cout<< "Not Divisible by 9" << endl;
    }
    cout << "Enter your Divisor: ";
}

int main()
{
    int div;
    cout << "Enter your divisor : ";
    while(cin >> div)
    {
        if(div<3 || div>9)
        {
            cout << "Conditon is Not Found!!!" << endl;
            break;
        }
        if(div==3)
        {
            cin.ignore();
            Divisible_By_Three();
        }
        if(div==4)
        {
            cin.ignore();
            Divisible_By_Four();
        }
        if(div==5)
        {
            cin.ignore();
            Divisible_By_Five();
        }
        if(div==6)
        {
            cin.ignore();
            Divisible_By_Six();
        }
        if(div==7)
        {
            cin.ignore();
            Divisible_By_Seven();
        }
        if(div==8)
        {
            cin.ignore();
            Divisible_By_Eight();
        }
        if(div==9)
        {
            cin.ignore();
            Divisible_By_Nine();
        }
    }
    return 0;
}



Compare equality of two string in C

#include <stdio.h> #include<string.h> int main() {     char* country = "Bangladesh";     char* country2;     ...