Могу ли я сделать его более простым?Упростить вычисляющую разницу между каждым элементом и элементами справа.
for(int k=0;k<n;k++)
for(int l=(k+1);l<n;l++)
{
tot+=(max(a[k],a[l])-min(a[k],a[l]));
}
Эта программа в настоящее время занимает больше времени для выполнения и превышения срока.
Насколько велика 'n'? И что именно вы пытаетесь достичь. Попытка оптимизировать этот код бессмысленна, не зная, чего вы хотите добиться. Может быть, вы идете об этом, ПОЛНОСТЬЮ неправы, и есть что-то гораздо более простое, чтобы получить то, что вы хотите. –
он должен быть в C++. –
Вы можете заменить 'max (a [k], a [l]) - min (a [k], a [l])' что-то вроде 'abs (a [k] - a [l])'. Для большего улучшения нам нужно знать, чего вы действительно хотите – Marc