с программой! Участники Международной Олимпиады по программированию, которую решили провести на
платформе отправили на проверку N файлов с кодом:
f1, f2, . . . , fN . Прежде чем показать участникам результаты проверки, жюри решило оценить вероятность списывания. Они написали программу, которая сравнивает два файла и оценивает, насколько они похожи друг на друга. Если же программа считает файлы слишком похожими, жюри
сообщает об этом участникам и больше не желает иметь с ними ничего общего.
Так как количество файлов довольно велико, проверка всех пар файлов займет слишком много
времени. С другой стороны, файлы, размеры которых слишком сильно отличаются, можно считать
не похожими. Воспользуемся этим!
Жюри решило не сравнивать пары файлов, для которых размер меньшего файла составляет
менее 90% от размера большего файла. Таким образом, программа должна сравнить только такие
пары различных файлов (fi
, fj ), i 6= j, для которых верно size(fi) 6 size(fj ) и size(fi) > 0.9·size(fj ).
Напишите программу, которая вычислит количество пар файлов, которые придется сравнить.
Формат входных данных
В первой строке записано число N (1 6 N 6 105
) — количество файлов.
Во второй строке записаны N целых чисел: size(f1), size(f2), . . . , size(fN ) (1 6 size(fi) 6 108
) —
размеры файлов.
Формат выходных данных
Выведите одно число — количество пар файлов, которые придется сравнить.
Примеры
стандартный ввод стандартный вывод
ввод
2
2 1
вывод
0
ввод
5
1 1 1 1 1
вывод
10
Объяснение:
возможно то, возможно нет, но на:
map(int, input().split()) можно использовать в случае, если вводится несколько чисел через разделитель (в данном случае через пробел)
По шагам:
input() возвращает строку (например: "1 2 3")
split() преобразует строку в list по разделителю - по умолчанию это пробел (результат: ["1", "2" ,"3"])
map преобразует список в соответствие с функцией - в данном случае int(elem) (результат: [1, 2 , 3]
В результате выполнения кода получится объект map, который хорошо бы еще было обернуть в list (list(map())
#include <iostream>
using namespace std;
int main() {
int a[100], n;
cin >> n;
for (int i = 0; i < n; i++) {
cin >> a[i];
}
//сюда код свой
int min_elem_ind = 0;
int min_elem_val = a[0];
for (int i = 1; i < n; i++) {
if (min_elem_val > a[i]) {
min_elem_val = a[i];
min_elem_ind = i;
}
}
int max_elem_ind = 0;
int max_elem_val = a[0];
for (int i = 1; i < n; i++) {
if (max_elem_val < a[i]) {
max_elem_val = a[i];
max_elem_ind = i;
}
}
if (max_elem_ind > min_elem_ind) {
cout << "Min" << endl;
}
if (max_elem_ind < min_elem_ind) {
cout << "Max" << endl;
}
else {
cout << "Error" << endl;
}
return 0;
}