
E3. Ревизия Ограничение времени 1 секунда Ограничение памяти 64Mb Ввод стандартный ввод или
input.txt Вывод стандартный вывод или output.txt В связи с визитом Императора Палпатина было решено обновить состав дроидов в ангаре 32. Из-за кризиса было решено новых дроидов не закупать, но выкинуть пару старых. Как известно, Палпатин не переносит дроидов с маленькими серийными номерами, так что все, что требуется - найти среди них двух, у которых серийные номера наименьшие. Формат ввода Первая строка входного файла содержит целое число N – количество дроидов. (2 ≤ N ≤ 1000), вторая строка – N целых чисел, по модулю не превышающих 2*109 – номера дроидов Формат вывода Выведите два числа: первым – последний по величине из номеров дроидов (такого следует утилизировать в первую очередь), а вторым – предпоследний. Язык с++

Ответы на вопрос

#include<iostream>
using namespace std;
int main(){
int N, min_index=1001;
long droids[1001]={0}, min=2000000001, pre_min=2000000001;
cin>>N;
for(int i=0; i<N; i++)
cin>>droids[i];
for(int i=0; i<N; i++)
if(droids[i]<min) {
min = droids[i];
min_index = i;
}
droids[min_index]=2000000001;
for (int i=0; i<N; i++)
if(droids[i]<pre_min)
pre_min=droids[i];
cout<<min<<" "<<pre_min;
}



Для решения данной задачи, вам нужно найти два минимальных значения из введенных номеров дроидов. Это можно сделать с помощью простого алгоритма, который находит минимальное и второе минимальное значения. Вот пример кода на C++, который решает эту задачу:
cpp#include <iostream>
#include <vector>
int main() {
int N;
std::cin >> N;
std::vector<int> droidNumbers(N);
for (int i = 0; i < N; i++) {
std::cin >> droidNumbers[i];
}
int firstMin = INT_MAX; // Первое минимальное значение, начально устанавливаем как максимальное целое
int secondMin = INT_MAX; // Второе минимальное значение, начально устанавливаем как максимальное целое
for (int i = 0; i < N; i++) {
if (droidNumbers[i] < firstMin) {
secondMin = firstMin;
firstMin = droidNumbers[i];
} else if (droidNumbers[i] < secondMin && droidNumbers[i] != firstMin) {
secondMin = droidNumbers[i];
}
}
std::cout << secondMin << " " << firstMin << std::endl; // Выводим второе минимальное и первое минимальное значения
return 0;
}
Просто скопируйте этот код в свою среду разработки и выполните его, чтобы получить ответ на задачу.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili