#include <iostream>
using namespace std;
int main()
{
int n,i,max,j,count=0,sum=0;
cout << "n = ";
cin >> n;
int array[n];
for (i=0;i<n;i++)
cin >> j;
if (j>1000000)
cout << "Элемент массива превосходит 1000000";
break;
}
else
array[i] = j;
sum += j;
max = array[0];
for (i=1;i<n;i++)
if (array[i]>max)
max = array[i];
if (array[i] == max)
count++;
if (count > 1)
sum -= count*max;
cout << "Сумма элементов массива без максимальных: " << sum;
sum -= max;
cout << "Сумма элементов массива без максимального: " << sum;
n = 5
1 2 5 3 5
Сумма элементов массива без максимальных: 6
1 2 3 4 5
Сумма элементов массива без максимального: 10
В задании исходный код программы введен немного неправильно, поэтому я решил его загуглить и нашел во с идентичными кодом без ответа. Код, вроде, рабочий, но я его серьезно не тестировал.
N = 1E5
a, p, s = [], [], []
def main():
n = k = i = j = 0
(n, k) = (int(input()), int(input()))
p = [0] * n
s = [0] * n
for i in range(0, n):
a.append(int(input()))
if a[i] > a[j]:
p[i] = i
j = i
else:
p[i] = p[j]
j = n - 1
for i in range(n - 1, -1, -1):
if (a[i] >= a[j]):
s[i] = i
s[i] = s[j]
m, l, r = 0, 0, k + 1
i = l
for j in range(r, n):
t = a[p[i]] + a[s[j]]
if t > m:
l = p[i]
r = s[j]
m = t
i += 1;
print(str(l + 1) + " " + str(r + 1))
if __name__ == "__main__":
main()
#include <iostream>
using namespace std;
int main()
{
int n,i,max,j,count=0,sum=0;
cout << "n = ";
cin >> n;
int array[n];
for (i=0;i<n;i++)
{
cin >> j;
if (j>1000000)
{
cout << "Элемент массива превосходит 1000000";
break;
}
else
{
array[i] = j;
sum += j;
}
}
max = array[0];
for (i=1;i<n;i++)
{
if (array[i]>max)
{
max = array[i];
}
}
for (i=0;i<n;i++)
{
if (array[i] == max)
{
count++;
}
}
if (count > 1)
{
sum -= count*max;
cout << "Сумма элементов массива без максимальных: " << sum;
}
else
{
sum -= max;
cout << "Сумма элементов массива без максимального: " << sum;
}
}
Вывод:n = 5
1 2 5 3 5
Сумма элементов массива без максимальных: 6
1 + 2 + 3 = 6n = 5
1 2 3 4 5
Сумма элементов массива без максимального: 10
1 + 2 + 3 + 4 = 10В задании исходный код программы введен немного неправильно, поэтому я решил его загуглить и нашел во с идентичными кодом без ответа. Код, вроде, рабочий, но я его серьезно не тестировал.
N = 1E5
a, p, s = [], [], []
def main():
n = k = i = j = 0
(n, k) = (int(input()), int(input()))
p = [0] * n
s = [0] * n
for i in range(0, n):
a.append(int(input()))
if a[i] > a[j]:
p[i] = i
j = i
else:
p[i] = p[j]
j = n - 1
for i in range(n - 1, -1, -1):
if (a[i] >= a[j]):
s[i] = i
j = i
else:
s[i] = s[j]
m, l, r = 0, 0, k + 1
i = l
for j in range(r, n):
t = a[p[i]] + a[s[j]]
if t > m:
l = p[i]
r = s[j]
m = t
i += 1;
print(str(l + 1) + " " + str(r + 1))
if __name__ == "__main__":
main()