Подскажите элегантное решение задачи в функциональном стиле.
Нужно что-то сделать для всех возможных наборов переменных i_1, i_2, i_3, каждая из которых может принимать значения от 0 до n-1. Например:
s=0;
for(i_1=0; i_1<n; i_1++)
for(i_2=0; i_2<n; i_2++)
for(i_3=0; i_3<n; i_3++)
s+=(i_1+i_2+i_3)*(i_1+i_2+i_3);
А теперь нужно то же самое сделать для i_1, i_2, i_3,...,i_m, где параметр m задается в начале работы программы.
Как это лучше сделать? Я раньше такие вещи быдлокодил, вручную делая в программе m строк с циклами for, но сейчас нужно написать программу, где такое уже не прокатит.