View Code of Problem 88

#include <iostream>
#include <vector>

using namespace std;

int main(void)
{
    int arr[7] = {0};
    int sum = 0;
    for (int i = 1; i <= 6; i++)
        cin >> arr[i];
    for (int i = 6; i > 0; i--)
    {
        while (arr[i]--)
        {
            int rem = 36 - (i * i);
            if (rem != 0)
            {
                int j = i;
                while (j)
                {
                    if (rem % (j * j) == 0 && arr[j] != 0)
                        break;
                    j--;
                }
                if (j > 0)
                {
                    while (arr[j] != 0 && rem > 0)
                    {
                        rem -= j * j;
                        arr[j]--;
                    }
                }
            }
            sum++;
        }
    }
    cout << sum << endl;
    return 0;
}

Double click to view unformatted code.


Back to problem 88