int main() {     long long int total;     long long int init;     scanf("%lld %lld", &total, &init);     getchar();     long long int max = init;     long long int min = init;     int i;     for (i = 0; i < total; i++)     {         char op1 = '0';         char op2 = '0';         long long int num1 = 0;         long long int num2 = 0;         scanf("%c %lld %c %lld", &op1, &num1, &op2, &num2);         getchar();         long long int maxr = max;         long long int minr = min;         if (op1 == '+')         {             long long int sum = max + num1;             maxr = sum;             minr = sum;             long long int res = min + num1;             if (res > maxr)             {                 max = res;             }             if (res < minr)             {                 minr = res;             }         }         else         {             long long int sum = max * num1;             maxr = sum;             minr = sum;             long long int res = min * num1;             if (res > maxr)             {                 maxr = res;             }             if (res < minr)             {                 minr = res;             }         }         if (op2 == '+')         {             long long int sum = max + num2;             if (sum > maxr)             {                 maxr = sum;             }             if (sum < minr)             {                 minr = sum;             }             long long int res = min + num2;             if (res > maxr)             {                 maxr = res;             }             if (res < minr)             {                 minr = res;             }         }         else         {             long long int sum = max * num2;             if (sum > maxr)             {                 maxr = sum;             }             if (sum < minr)             {                 minr = sum;             }             long long int res = min * num2;             if (res > maxr)             {                 maxr = res;             }             if (res < minr)             {                 minr = res;             }         }         min = minr;         max = maxr;     }     printf("%lld\n", max);     return 0; } Sample Input #1 3 123 + 100 x 2 + -100 x -2 + 0 + 0 Sample Output #1 146 Can u give general explaination for this code, so i can learn it.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%

int main()
{
    long long int total;
    long long int init;

    scanf("%lld %lld", &total, &init);
    getchar();

    long long int max = init;
    long long int min = init;

    int i;
    for (i = 0; i < total; i++)
    {
        char op1 = '0';
        char op2 = '0';

        long long int num1 = 0;
        long long int num2 = 0;

        scanf("%c %lld %c %lld", &op1, &num1, &op2, &num2);
        getchar();

        long long int maxr = max;
        long long int minr = min;

        if (op1 == '+')
        {
            long long int sum = max + num1;

            maxr = sum;
            minr = sum;

            long long int res = min + num1;

            if (res > maxr)
            {
                max = res;
            }

            if (res < minr)
            {
                minr = res;
            }
        }
        else
        {
            long long int sum = max * num1;

            maxr = sum;
            minr = sum;

            long long int res = min * num1;

            if (res > maxr)
            {
                maxr = res;
            }

            if (res < minr)
            {
                minr = res;
            }
        }

        if (op2 == '+')
        {
            long long int sum = max + num2;

            if (sum > maxr)
            {
                maxr = sum;
            }

            if (sum < minr)
            {
                minr = sum;
            }

            long long int res = min + num2;

            if (res > maxr)
            {
                maxr = res;
            }

            if (res < minr)
            {
                minr = res;
            }
        }
        else
        {
            long long int sum = max * num2;

            if (sum > maxr)
            {
                maxr = sum;
            }

            if (sum < minr)
            {
                minr = sum;
            }

            long long int res = min * num2;

            if (res > maxr)
            {
                maxr = res;
            }

            if (res < minr)
            {
                minr = res;
            }
        }

        min = minr;
        max = maxr;
    }
    printf("%lld\n", max);

    return 0;
}

Sample Input #1
3 123
+ 100 x 2
+ -100 x -2
+ 0 + 0
Sample Output #1
146

Can u give general explaination for this code, so i can learn it.

Expert Solution
steps

Step by step

Solved in 4 steps

Blurred answer
Knowledge Booster
Class
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education