Дважды подряд записать трехзначное число — это значит умножить его на 1001. Умножив на 1000, мы получаем исходное число с тремя нулями. Добавляем к полученному числу еще один раз исходное число. Получается число, в записи которого дважды повторяются цифры исходного числа.
Последовательно разделить на 13, 11 и 7 – значит разделить число на произведение 13 * 11* 7, которое равно 1001.
Получается, что мы число сначала умножаем на 1001, а после делим на 1001. Естетственно, у нас получится исходное число:
(n * 1001) / (13 * 11 * 7) = (n * 1001) / 1001 = n.
n, counter, spisok, new_spisok = int(input()), 0, [], []
while counter != n:
spisok.append(int(input()))
counter += 1
c1, c2 = int(input()), int(input())
for i in spisok:
if c1 <= i <= c2:
new_spisok.append(i)
print(new_spisok, len(new_spisok))
Объяснение:
1) хз зачем там цикл while, но раз в условии написано, то сделал через него;
2) скорее всего работать нужно со списками, а не массивами, так как append - метод списка;
3) если нужно, могу объяснить каждую строку;
4) формат вывода массива не указан, поэтому вывод обычного массива с его длиной через запятую;
5) нижние слеши это пробелы типа)
Объяснение: