Дан массив, содержащий 2018 положительных целых чисел, меньших 10000. Необходимо найти и вывести минимальный из тех элементов этого массива, десятичная и шестнадцатеричная запись которых заканчивается одним и тем же символом. Если таких чисел в массиве нет, ответ считается равным 10000.
Например, для массива из четырёх элементов, равных 80, 91, 162 и 250, в ответе должно получиться 80. В
шестнадцатеричном виде эти числа записываются как 50, 5B, A2 и FA. Последний символ в десятичной и шестнадцатеричной записи совпадает у первого и третьего числа, меньшее из них – первое, то есть 80.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.
| Бейсик | Python |
|---|---|
CONST N=2018 DIM A(N) AS INTEGER DIM I, M, K AS INTEGER FOR I = 1 TO N INPUT A(I) NEXT I … END
| # допускается также #использование #целочисленных # переменных m, k a = [] N = 2018 for i in range(0, N): a.append(int(input())) …
|
| Паскаль | Алгоритмический язык |
const N=2018; var a: array [1..N] of integer; i, m, k: integer; begin for i:=1 to N do readln(a[i]); … end.
| алг нач цел N=2018 целтаб a[1:N] цел i, m, k нц для i от 1 до N ввод a[i] кц … кон |
| Си++ | |
#include <iostream> using namespace std; const int N = 2018; int main(){ int a[N]; int i, m, k; for (i=0; i … return 0; } | |
В качестве ответа необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и версию языка программирования). В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии.
PDF-версии: 