?>
с программой! Участники Международной Олимпиады по программированию, которую решили провести на платформе отправили на проверку 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
Ответы
#include
#include
int main(){
int odds_sum=0,odds_cnt=0,
tdgt_sum=0,mthr_cnt=0;
for(int i=0,n; i< 10; i++){
scanf("%d",& n);
if(n%2==1){
odds_cnt++;
odds_sum+=n;
}
if(9
if(n%3==0)mthr_cnt++;
}
printf("%d\n",odds_sum); //сумма нечётных
printf("%d\n",odds_cnt); //количество нечётных
printf("%d\n",tdgt_sum); //сумма двузначных
printf("%d\n",mthr_cnt); //количество кратных трём
return 0;
}
2.#include
#include
int main(){
int even_sum=0,tdgt_sum=0,
tdgt_cnt=0,ngtv_cnt=0;
for(int i=0,n; i< 20; i++){
scanf("%d",& n);
if(n%2==0)even_sum+=n;
if(9
tdgt_cnt++;
tdgt_sum+=n;
}
if(n< 0)ngtv_cnt++;
}
printf("%d\n",even_sum); //сумма чётных
printf("%d\n",tdgt_sum); //сумма двузначных
printf("%d\n",tdgt_cnt); //количество двузначных
printf("%d\n",ngtv_cnt); //количество отрицательных
return 0;
}
3.#include
#include
int main(){
int ngtv_sum=0,ngtv_cnt=0,
tdgt_sum=0,tdgt_cnt=0;
for(int i=0,n; i< 15; i++){
scanf("%d",& n);
if(n< 0){
ngtv_sum+=n;
ngtv_cnt++;
}
if(99
tdgt_sum+=n;
tdgt_cnt++;
}
}
printf("%d\n",ngtv_sum); //сумма отрицательных
printf("%d\n",ngtv_cnt); //количество отрицательных
printf("%d\n",tdgt_sum); //сумма двузначных
printf("%d\n",tdgt_cnt); //количество двузначных
return 0;
}