Вдохновленный этим вопросом от наших друзей- конкурентов на Code Review.
Определения
Супер массив представляет собой массив , где каждый новый элемент в массиве больше , чем сумма всех предыдущих элементов. {2, 3, 6, 13}
это супер массив, потому что
3 > 2
6 > 3 + 2 (5)
13 > 6 + 3 + 2 (11)
{2, 3, 5, 11}
это не супер массив, потому что
3 > 2
5 == 3 + 2
11 > 5 + 3 + 2
Массив пупер представляет собой массив , где каждый новый элемент в массиве больше , чем произведение всех предыдущих элементов. {2, 3, 7, 43, 1856}
это супер-массив, но это также двойной массив, так как
3 > 2
7 > 3 * 2 (6)
43 > 7 * 3 * 2 (42)
1856 > 43 * 7 * 3 * 2 (1806)
Соревнование
Напишите функцию или программу, которая принимает массив в качестве входных данных в вашем родном формате списка языков и определяет, насколько супер массив. При желании вы также можете ввести длину массива (для таких языков, как C / C ++). Кроме того , можно предположить , что все номера в списке будут целые числа больше 0. Если это супер массив, вы должны напечатать It's a super array!
Если это супер пупер массив, вы должны напечатать It's a super duper array!
Это возможно также массив быть duper- без супер. Например, {1, 2, 3}
в этом случае вы должны напечатать. It's a duper array!
Если массив не является ни super, ни duper, вы можете вывести ложное значение.
Как обычно, это кодовый гольф, поэтому применяются стандартные лазейки, и выигрывает самый короткий ответ в байтах.
{1, 2, 3}
массива?
2 * 1
равнялся 3
в моей голове.
super[space][space]array
позволено.