Форум » Выполнение и анализ алгоритмов для исполнителей » Задача №5446 » Ответить

Задача №5446

Skryl Nikita: Ответ 1899 неверен. 2 + 8 + 9 + 9 = 27 != 30 По логике задачи, нам нужно заполнить начало номера карты нулями, затем, для минимизации понять, что 4 цифры это минимум, который нам нужен. Дальше в конец ставим "99". Теперь за 2 оставшихся цифры на до найти 30-18 = 12 для суммы. Попробуем, опять же, для минимизации, на первое место поставить 1. Тогда оно удвоится(раз она на нечетном месте). За одну цифру мы 12-2 = 10 не сделаем, значит на первое место нашего четырехзначного числа мы ставим 2, а на второй 8. Итог - 2899, 4+8+9+9 = 30, выше доказали, что оно минимальное. Правильный ответ - 2899

Ответов - 4

vladimirKazan: Здравствуйте! Цитата из условия: "Автомат получает на вход номер банковской карты (число N из 16 цифр)". Во-первых, ни одна банковская карта не начинается нолём, ведь первая цифра указывает на платёжную систему. Во-вторых, в скобках сказано, что это число из 16 цифр. В таких случаях в математике и задачах ЕГЭ по информатике (см. например задачу ЕГЭ №8) незначащие нули не пишут.

Skryl Nikita: Достаточно неочевидные условия, ведь в целом никто не запрещал зарегистрировать платежную систему, начинающуюся нулями. По крайней мере этот факт на экзамене не проверишь. Да и в целом то нас просят остаток от деления написать, а не число полностью, поэтому тоже достаточно расплывчато. Если так, решение тогда приходит к очевидному 1000 0000 0000 1899, как я понимаю. Погуглив, и 1 в начале тоже достаточно сомнительна, потому что не сильно известна платежная система, начинающаяся с 1. Такие выдают авиалинии как свои карты, но это уже не совсем банковская карта как таковая. Надеюсь на экзамене будет максимально без возможности в таком ключе думать)

s11kai: Skryl Nikita пишет: Во-первых, ни одна банковская карта не начинается нолём, ведь первая цифра указывает на платёжную систему. А где вы увидели, что в условии говорится: "начинается нолём"!? Условие нужно читать внимательнее, там сказано: – цифры числа нумеруются справа налево, начиная с ноля; Сие означает, что номер первой справа цифры равен 0 НОМЕР, а не ЗНАЧЕНИЕ, ... vladimirKazan пишет: Во-вторых, в скобках сказано, что это число из 16 цифр. В таких случаях в математике и задачах ЕГЭ по информатике (см. например задачу ЕГЭ №8) незначащие нули не пишут. Это верная мысль! поэтому первая цифра - 1. Стало быть можно задать шаблон числа: 1000 0000 0000 0000 где красный ноль - четный, а зеленый - нечетный и т.д.


s11kai: Skryl Nikita пишет: Достаточно неочевидные условия, ведь в целом никто не запрещал зарегистрировать платежную систему, начинающуюся нулями Да нет в условии такого - начинается с нуля Зри в корень или смотри выше! Автомат получает на вход номер банковской карты (число N из 16 цифр) и строит по нему контрольное число S следующим образом (вариант алгоритма Лу́на): – цифры числа нумеруются справа налево, начиная с ноля; – цифры, стоящие на нечётных позициях, увеличиваются в два раза. Если при этом получается двузначное число, его цифры складываются; – результат S вычисляется как сумма всех цифр на чётных позициях и преобразованных цифр на нечётных позициях. Например, для числа 4096 8308 0309 8323 сумма цифр на чётных позициях (с конца) 3+3+9+3+8+3+6+0=35, сумма преобразованных цифр на нечётных позициях 4+7+0+0+0+7+9+8=35. Общая сумма S = 70. Найдите наименьший номер банковской карты N, для которого результатом работы алгоритма будет число 30. В ответе укажите остаток от деления найденного числа N на 108.



полная версия страницы