Tuesday, 29 March 2016

C and C++ program to find maximum between two numbers using ternary operator( ?: ) operator Problem Solution.


Solution In C:

#include<stdio.h>
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    int A, B, mx;

    printf("Enter any two numbers (Separated By Space):\n");
    scanf("%d %d", &A, &B); // Read two numbers

    // Check if A > B or not and prints the maximum
    mx = (A > B) ? A : B;
    printf("%d is maximum", mx);

    return 0;
}

Output:


Solution In C++:

#include<iostream>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    int A, B, mx;

    cout << "Enter any two numbers (Separated By Space):" << endl;;
    cin >> A >> B; // Read two numbers

    // Check if num1 > num2 or not and prints the maximum
    mx = (A > B) ? A : B;
    cout << mx << " is maximum." << endl;;

    return 0;
}

Output:

C and C++ program to find maximum between two numbers Problem Solution.

Write a program to enter two numbers from user and find maximum between two using if else. 

Example: 
A =  10
B = 20
A is greater than B so,output is: 20.

Solution In C:


#include<stdio.h>
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    int A, B;

    printf("Enter any two numbers (Separated By Space):\n");
    scanf("%d %d", &A, &B); // Read two numbers

    // Check if A > B or not and prints the maximum
    if(A > B){
        printf("%d is maximum", A);
    }
    else {
        printf("%d is maximum.", B);
    }

    return 0;
}

Output:



Solution In C++:

#include<iostream>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    int A, B;

    cout << "Enter any two numbers (Separated By Space):" << endl;;
    cin >> A >> B; // Read two numbers

    // Check if A > B or not and prints the maximum
    if(A > B)  {
        cout << A << " is maximum." << endl;;
    }
    else{
        cout << B << " is maximum." << endl;;
    }

    return 0;
}

Output:

C and C++ program to add two numbers Problem Solution.

Write a program in C and C++ to enter two numbers from user and calculate their sum. C and C++ program to add two numbers and display their sum as output.

Example: 
A = 30
B = 20 
A + B = 50 


Solution In C:


#include<stdio.h>
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){
    int A, B, C;

    printf("Enter first number: \n");
    scanf("%d", &A);  // Read first number
    printf("Enter second number: \n");
    scanf("%d", &B);  // Read second number

    //Adding both number is simple and fundamental
    C = A + B;

    // Prints the sum of two numbers
    printf("Sum of %d and %d = %d\n",A, B, C);

    return 0;
}

Output:



Solution In C++:

#include<iostream>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){
    int A, B, C;

    cout << "Enter first number:" << endl;;
    cin >> A;  // Read first number
    cout << "Enter second number:" << endl;;
    cin >> B;  // Read second number

    //Adding both number
    C = A + B;

    // Prints the sum of two numbers
    cout << "Sum of " << A << " and " << B <<" = "<< C << endl;

    return 0;
}

Output:


Friday, 25 March 2016

C And C++ Program To Find Area And Circumference Of Circle Problem Solution.


C Solution:

#include<stdio.h>
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
#define PI 3.14159
int main() {

   int radius;
   float area, circumference;

   printf("\nEnter radius of circle: ");
   scanf("%d", &radius);

   area = PI * radius * radius;
   printf("\nArea of circle : %f\n", area);

   circumference = 2 * PI * radius;
   printf("\nCircumference : %f\n", circumference);

   return ;
}

Output:


C++ Solution:

#include<iostream>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
#define PI 3.14159
int main() {

   int radius;
   float area, circumference;

   cout << "\nEnter radius of circle: ";
   cin >> radius;

   area = PI * radius * radius;
   cout << "\nArea of circle : " <<  area << endl;;

   circumference = 2 * PI * radius;
   cout << "\nCircumference : " << circumference << endl;;

   return 0;
}
Output:

Wednesday, 23 March 2016

যোগ করতে পার কি?(Can you sum them?) Codemarshal Problem Solution.

তোমাকে পূর্ণ সংখ্যার একটি অ্যারে দেয়া হবে। তোমাকে অ্যারের প্রথম সংখ্যাটি থেকে শুরু করে, পরপর দুটি সংখ্যা না নিয়ে অ্যারেটির সঙ্খাগুলোর যোগফল বের করতে হবে।
You will be given an array of integer numbers as input. Starting with the first number, you have to find the sum of the numbers in the array such that you cannot take two successive numbers in the sum.

ইনপুটের বর্ণনা

লাইন ১ – ইন্টিজার N, অ্যারেটিতে নম্বরের সংখ্যা। (1 ≤ 𝑁 ≤ 100000)
লাইন ২ – Nটি নম্বরের একটি অ্যারে। 0 ≤ 𝑥 ≤ 2^31

Input Specification

Line 1 – Integer N, the number of integers in the series ( 1 ≤ 𝑁 ≤ 100000 )
Line 2 – A series of N integers in the range.0 ≤ 𝑥 ≤ 2^ 31

আউটপুট এর বর্ণনা

অ্যারের প্রথম নম্বরটি থেকে শুরু করে, পরপর দুটি নম্বর না নিয়ে অ্যারেটির সংখ্যাগুলোর যোগফল বের কর।

Output Specification

Starting with the first one, output the sum of the numbers in the series without taking two successive numbers.

Samples

InputOutput
2 1 01
InputOutput
3 1 2 34

Solution:

#include<bits/stdc++.h>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    long long n,a,sum = 0;
    cin >> n;
    for(int i = 0; i < n; i++){
        cin >> a;
        if(!(i%2))sum+=a;
    }
    cout << sum << endl;
    return 0;
}

তাপদাহ ( Heat Streak ) Codemarshal Problem Solution.

যদি পরপর কিছু দিনের সর্বোচ্চ তাপমাত্রা এমন হয় যেন প্রতিটি দিনের সর্বোচ্চ তাপমাত্রা তার আগের দিনের সর্বোচ্চ তাপমাত্রার সমান বা বেশি হয় এবং এই ধারাটিকে আর বড় করা সম্ভব না হয়, তাহলে প্রফেসর K এটিকে তাপদাহ হিসেবে অভিহিত করেন। কোন তাপদাহ যত দিন ব্যাপি চলে, তাকে তাপদাহটির দৈর্ঘ্য বলা হয়। তোমাকে পরপর কিছু দিনের সর্বোচ্চ তাপমাত্রার ডাটা সরবরাহ করা হবে। তা থেকে তোমাকে সর্বোচ্চ দৈর্ঘ্যের তাপদাহটি বের করতে হবে। একটি তাপদাহ সর্বোচ্চ দৈর্ঘ্যের হবে, যদি এটির দৈর্ঘ্য প্রদত্ত ডাটায় প্রাপ্ত সবগুলি তাপদাহের মধ্যে সর্বোচ্চ হয়।
উদাহরণস্বরূপ, তাপমাত্রার এই ডাটাটি বিবেচনা করিঃ 20 18 20 21 23 22 11. এখানে প্রথমে একটি একদিনের তাপদাহ {20} পাওয়া যায়, তারপরে একটি চার দৈর্ঘ্যের তাপদাহ {18 20 21 23} পাওয়া যায়, তারপরে একটি একদিনের তাপদাহ {22} এবং সর্বশেষে আরেকটি একদিনের তাপদাহ {11} পাওয়া যায়। লক্ষ্য কর যে {18 20} এটি কোন তাপদাহ নয়। কারণ যদিও এটি ক্রমবর্ধমান, কিন্তু এটিকে আরও বড় করা সম্ভব। এটির সাথে 21 এবং 23 যোগ করলে এটিকে আর বড় করা সম্ভব হবে না, ফলে {18 20 21 23} একটি তাপদাহ।

Professor K has defined Heat Streak as a sequence of maximal successive days where the daily maximum temperature either increased or remained the same from one day to the next. The total number of days in such a sequence is called the length of the Heat Streak. You are given the maximum temperature data of several days. You need to find the length of the Maximum Heat Streak. A Heat Streak is called Maximum Heat Streak if its length is maximum among all the Heat Streaks observed in the given data.
For example, consider the temperature data: 20 18 20 21 23 22 11. Here we find a 1 day heat streak {20}, followed by a 4 day heat streak {18 20 21 23}, followed by a 1 day heat streak {22}, and then another 1 day heat streak {11}. Note that the sequence {18 20} is not a heat streak. This is because the sequence is increasing, but it is not maximal. We can further add 21 and 23 to the sequence to make it maximal.

ইনপুটের বর্ণনা

ইনপুটের প্রথম লাইনে টেস্টকেসের সংখ্যা T দেওয়া থাকবে। প্রতিটি টেস্টকেস একটি লাইনে বর্ণনা করা হবে। প্রতিটি লাইনের শুরুতে একটি পূর্ণসংখ্যা n দেওয়া থাকবে, যা নির্দেশ করে কতদিনের তাপমাত্রার ডাটা সরবরাহ করা হবে। এর পরে n টি পূর্ণসংখ্যা থাকবে, যা পরপর n দিনের সর্বোচ্চ তাপমাত্রা প্রকাশ করে। তাপমাত্রাগুলি 1 হতে 60 এর মধ্যে হবে। পূর্ণসংখ্যাগুলি একটি স্পেস দিয়ে আলাদা করা থাকবে।

Input

First line of the input contains T, the number of test cases. Each test case is specified in a single line. The line contains an integer n that represents the number of days for which temperature data is available. Then n integers follow, representing maximum temperature of each successive day. Each temperature will be in the range of 1 to 60. The numbers are separated from each other by a single space.

অাউটপুটের বর্ণনা

প্রতিটি টেস্টকেসের জন্য একটি লাইনে সর্বোচ্চ তাপদাহের দৈর্ঘ্য আউটপুট দিতে হবে।

Output

For each test case output in a single line the length of the Maximum Heat Streak.

Limit

1 <= T <= 20
1 <= n <= 104

Sample

InputOutput
2 5 30 29 28 27 26 7 20 18 20 21 23 22 111 4

Solution:

#include<bits/stdc++.h>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    int T,n,a;
    vector<int>ar;
    cin >> T;
    for(int t = 1; t <= T; t++){
        cin >> n;
        int mx = -99999;
        for(int i = 0; i < n; i++){
            cin >> a;
            ar.push_back(a);
        }
        int k = 1;
        for(int i = 0; i < n-1; i++){
            if(ar[i] <= ar[i+1])k++;
            else {
                if(k > mx)mx = k;
                k = 1;
            }
        }
        (mx > k)?cout << mx << endl : cout << k << endl;
        ar.clear();
    }
    return 0;
}

তারার পিরামিড (Pyramid of Stars) Codemarshal Problem Solution.

মারকাস সম্প্রতি মিশর থেকে ঘুরে আসলো। এখন সে পিরামিডের প্রেমে পরেছে। এইজন্যে সে পিরামিড আঁকবে চিন্তা করেছে। যেহেতু সে এখনো নতুন, তার আঁকা পিরামিডগুলো বাম্ পাশে ঘেঁষে থাকে। নিম্নে তার দ্বারা আঁকা একটি ৫ উচ্চতার পিরামিডের নমুনা দেয়া হল।
*
**
***
****
*****
****
***
**
*
Pyramid with height = 5
এখন সে N উচ্চতার পিরামিড আঁকতে চায়। সে তোমার সাহায্য খুজছে কাজটির জন্যে। তোমাকে যদি N দেয়া হয়, অনুগ্রহ করে তার মত করে N উচ্চতার একটি পিরামিড আঁক।
Marcus recently visited Egypt. Now he has fallen in love with the pyramids. He wants to draw pyramids now. But as he is still amateur, his pyramids will be left aligned. You can see a example of pyramid with height 5 in the figure above. Now he wants to draw a pyramid with height N. He seeks your help for this. Please help him in drawing a pyramid of height N.

ইনপুটের বর্ণনা

প্রথম লাইনে থাকবে একটি ধনাত্মক পূর্ণসংখ্যা T (T <= ১০০ ), যেটি হল টেস্ট কেসের সংখ্যা। তার পরের T লাইনে থাকবে একটি পূর্ণ সংখ্যা N ( ১ <= N <= ১০০ ), যেটি হল পিরামিডের উচ্চতা।

Input Specification

The first line contains a positive integer T (T <= 100 ), number of test case. In the following T lines, you will be given a positive integers N (1<=N <= 100) which is the height of the pyramid.

আউটপুটের বর্ণনা

প্রতিটি কেসের জন্য কেস নম্বর প্রিন্ট দিয়ে, তার পরের লাইন থেকে N উচ্চতার একটি পিরামিড আঁকতে হবে।

Output Specification

For each case print the case number, and then the pyramid with height = N.

Sample

InputOutput
3 1 2 3Case 1: * Case 2: * ** * Case 3: * ** *** ** *

Solution:

#include<bits/stdc++.h>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    int T,n;
    cin >> T;
    for(int t = 1; t <= T; t++){
        cin >> n;
        cout << "Case " << t << ":" << endl;
        for(int i = 1; i <= n; i++){
            int tmp = i;
            while(tmp--)cout << "*";
            cout << endl;
        }
        for(int i = n-1; i >=1; i--){
            int tmp = i;
            while(tmp--)cout << "*";
            cout << endl;
        }
    }
    return 0;
}

গরিষ্ঠ সাধারণ গুণনীয়ক ( Greatest Common Divisor ) Codemarshal Problem Solution.

পিটার ও টুরিস্ট ক্রিকেট খেলছিল। তাদের খেলার নিজেদের নিয়ম আছে। পিটার অনেক ভাল খেলে। সে টসে জিতে ব্যাটিং নিল এবং A রান করল। তারপর টুরিস্ট সেই রানের তাড়া শুরু করল। খেলা অনেক কঠিন ছিল এবং টুরিস্ট B রান করার পর হঠাৎ করে বৃষ্টি শুরু হল এবং তারা দ্বন্দ্বে পড়ে গেল এখন কি করা যায়। তাদের খেলায় বৃষ্টির জন্য কোন নিয়ম ছিল না। কিন্তু টুরিস্ট অনেক বুদ্ধিমান এবং চালাক। সে বলল বৃষ্টির পর তার নতুন টার্গেট হবে C = B + GCD( A , B )। পিটার এই নিয়মে খুশিই ছিল। সে দ্রুত দুইটি সংখ্যা A  B এর গসাগু বের করার জন্য একটি প্রোগ্রাম লিখে ফেলল। আমাদের এই সমস্যাটা ঠিক একই রকম। তোমাকে A এবং B এর মান দেওয়া হবে। তোমার কাজ হবে তাদের গসাগু বের করা।
Petr and Tourist were playing cricket (They have their own rules for cricket). Petr is very good in cricket. He won the toss and scored Aruns. Then Tourist started chasing Petr's score. It was indeed a tough match and Tourist scored B runs, where B is less than or equal to A. Suddenly it starts to rain and they got confused about what to do. They didn't have exact rules for raining. But as Tourist is too much talented and clever, he said after the rain stops his new target will be C = B + GCD( A , B ). Petr was happy about this new formula. Soon he wrote a code to find the Greatest Common Divisor ( GCD ) of A and B. This problem is also similar. You'll be given A and B. You have to find their GCD.

ইনপুটের বর্ণনা

প্রথম লাইনে ইনপুটের সংখ্যা T (0<T<=10000) দেওয়া থাকবে। পরবর্তী T লাইনে দুইটা করে পূর্ণসংখ্যা A এবং B দেয়া থাকবে। এখানে, 0<B<A<=1000000

Input Specification

First line will have the number of test cases T (0 < T<=10000). And in next T lines there will be two integers A and B. Here0<B<A<=1000000.

আউটপুট এর বর্ণনা

প্রতিটি ইনপুটের জন্য তোমাকে শুধুমাত্র A ও B এর গরিষ্ঠ সাধারণ গুণনীয়ক প্রিন্ট করতে হবে।
৩০ শতাংশ পয়েন্টের জন্য, 0<T<=1000 এবং 0<B<A<=1000
১০০ শতাংশ পয়েন্টের জন্য, ইনপুট বর্ণনা দেখো।

Output Specification

For each input you just need to print the GCD of A,B.
For 30% points, 0<T<=1000 and 0<B<A<=1000
For 100% points, follow input constraints.

Sample

InputOutput
3 2 1 10 5 200 1001 5 100

Solution:

#include<bits/stdc++.h>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int _GCD(int A,int B){
    while(A != B){
        if(A > B)A-=B;
        else B -= A;
    }
    return A;
}
int main(){

    int T,A,B;
    cin >> T;
    for(int t = 1; t <= T; t++){
        cin >> A >> B;
        cout << _GCD(A,B) << endl;;
    }
    return 0;
}

ফিজবাজ এক্সট্রিম ( FizzBuzz Extreme ) Codemarshal Problem Solution.

তুমি কি কখনো ফিজবাজের কথা শুনেছো? এটি একটি নাম করা ইন্টারভিউ সমস্যা। প্রবলেমটা এরকম:
"একটি প্রোগ্রাম লিখ যেটি ১ থেকে ১০০ পর্যন্ত সংখ্যা প্রিন্ট করবে। তবে যে সংখ্যাগুলো তিনের গুণিতক তাদের বেলায় সংখ্যাটির বদলে “Fizz” এবং পাঁচের গুণিতকের জন্য সংখ্যাটির বদলে "Buzz" প্রিন্ট করা লাগবে। যেই সংখ্যাগুলো ৩ ও ৫ উভয়ের গুণিতক, তাদের বেলায় প্রিন্ট করতে হবে, "“FizzBuzz”।
তুমি কি জানো কেন এই সমস্যাটি এত বিখ্যাত? কারণ অধিকাংশ প্রোগ্রামাররাই এই সহজ প্রোগ্রামটি লিখতে গিয়েই গুবলেট বসে। অদ্ভুত ব্যাপর, তাই না? এত সহজ প্রবলেমে ভুল?
আমরা অবশ্য তোমাকে এত সহজ প্রবলেম সলভ করতে দিব না। আমরা সমস্যাটাকে আরো মজার করব।
আমরা এই প্রবলেমটার খুব "কঠিন" একটা ভার্সন করব আজকে! আসলে এত কঠিনও না, তোমাকে যদি একটি সংখ্যা A দেওয়া থাকলে নিচের কাজগুলো করতে হবে:
১. আউটপুটে লেখ "Fizz", যদি A তিন দ্বারা বিভাজ্য, তবে পাঁচ দ্বারা বিভাজ্য না।
২. আউটপুটে লেখ "Buzz", যদি A পাঁচ দ্বারা বিভাজ্য, তবে তিন দ্বারা বিভাজ্য না।
৩. আউটপুটে লেখ "FizzBuzz", যদি A তিন ও পাঁচ উভয় দ্বারা বিভাজ্য।
৪. অন্যথায় আউটপুট "Null".
তুমি কি খেলাটি ঠিকমত খেলতে পারবে?
Do you know about the FizzBuzz game? It is a famous “Interview Problem”. The problem goes something like this:
"Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”."
Do you know why it is famous? Cause majority of the programmers seem to fail to write a program that solves the problem! Weird, right? It is so easy!
There is no way we will ask you to solve such an easy problem. We are gonna make it more interesting.
We will play an extreme version of the game. Given an integer A, you have to perform one of the following action:
Output “Fizz” if A is divisible by 3 but not 5.
Output “Buzz” if A is divisible by 5 but not 3.
Output “FizzBuzz” if A is divisible by both 3 and 5.
Output “Null” if A is not divisible by 3 or 5.
Can you play the game properly?

ইনপুট এর বর্ণনা

প্রথম লাইনে একটি ধনাত্মক পূর্ণসংখ্যা T ( T <= 100 ) নির্দেশ করে, যেটি টেস্টকেসের সংখ্যা নির্দেশ করে। পরবর্তী T লাইনে একটি করে ধনাত্মক সংখ্যা A থাকবে। Aসংখ্যাটিতে 105 এর থেকে কম ডিটিজ থাকবে এবং সংখ্যাগুলোর সামনে কখনো শূণ্য থাকবে না।
৩৫ শতাংশ কেসের জন্য, A এর মান ৬৪-বিট সংখ্যার ভিতরে এঁটে যাবে।

Input Specification

The first line contains a positive integer T ( T <= 100 ), number of test case. In the following T lines, there will be a single positive integer, AA will have less than 105 digits and no leading zeros.
For 35% of the cases, A will fit into 64-bit signed integer variable.

আউটপুট এর বর্ণনা

প্রতিটি কেসের জন্য কেস নাম্বার প্রিন্ট করো, তারপর খেলাটির সঠিক উত্তর প্রদান করো। সঠিক ইনপুট/আউটপুট ফরম্যাটের জন্য উদাহরণের কেসগুলো একবার করে দেখে নাও।

Output Specification

For each case print the case number, then the proper output for the game. See sample input/output for more details..

Sample

InputOutput
4 12 25 30 7Case 1: Fizz Case 2: Buzz Case 3: FizzBuzz Case 4: Null

Solution:

#include<bits/stdc++.h>
using namespace std;
/*
    *
    * Prosen Ghosh
    * American International University - Bangladesh (AIUB)
    *
*/
int main(){

    int T,sum;
    string A;
    cin >> T;
    for(int t = 1; t <= T; t++){
        cin >> A;
        sum = 0;
        for(int i = 0; i < A.size(); i++)sum += A[i] - '0';

        int val = A[A.length()-1] - '0';
        if(sum%3 == 0 && val%5 != 0)cout << "Case " << t << ": " << "Fizz" << endl;
        else if(val%5 == 0 && sum%3 != 0)cout << "Case " << t << ": " << "Buzz" << endl;
        else if(val%5 == 0 && sum%3 == 0)cout << "Case " << t << ": " << "FizzBuzz" << endl;
        else cout << "Case " << t << ": " << "Null" << endl;
    }
    return 0;
}