#include <iostream>
using namespace std;
int main() {
bool Flag = false;
int N, max, min;
cin >> N;
int* array = new int[N];
for (int i = 0; i < N; i++) {
cin >> array[i];
if (array[i] % 2 == 0 && array[i] > 0) {
max = array[i];
min = array[i];
Flag = true;
}
}
if (Flag == false) {
cout << -1 << " " << -1;
}
else {
for (int i = 0; i < N; i++) {
if (array[i] > max && array[i] % 2 == 0 && array[i] > 0)
max = array[i];
else if (array[i] < min && array[i] % 2 == 0 && array[i] > 0)
min = array[i];
}
cout << min << " " << max;
}
delete[] array;
return 0;
}
55:5=11
365:11≈33(34) берём "34", чтобы перехлестнуть 365.
Так как 11-ый член является замыкающим (перехлёстывающим 365), тогда смотрим по ближайшим:
34*10=340 (340+34=374) - подходит, но это не максимум!
365 mod 10= 36, а это значит, что последующий член будет больше 365, а именно 395.
В задании сказано, что d должно быть максимальным, а "34" - это допустимое, но не максимально число, удовлетворяющее условию, даже минимальное (по результату).
Проверка:
34*11=374, значит, когда на экране выведется s:=340, n:=50, то, зайдя по следующему циклу, получится, что s:= 374, n:=55. На следующий цикл программа не пойдёт.
ответ: d=34.