Ну вот смотри. Первоначальный массив:
a[0]=0, a[1]=1,..., a[5]=5.
Далее просто смотрим, что получается при отработке цикла
i=0: 0 1 2 3 4 0 (a[5] = a[0] - пятому элементу в массиве присваиваем значение нулевого)
i=1 : 0 1 2 3 1 0 (a[4] = a[1])
i=2: 0 1 2 2 1 0 (a[3] = a[2])
i=3: 0 1 2 2 1 0 (a[2] = a[3])
i=4: 0 1 2 2 1 0 (a[1] = a[4])
i=5: 0 1 2 2 1 0 (a[0] = a[5])
Вообще после i=2 уже ничего не меняется, так как симметрия такого ряда относительно среднего элемента массива видна отчетливо. Но следует понимать, что в памяти все же происходит перезапись элемента (в C/C++ насколько я помню, произойдет копирование int'а и там не будет несколько ссылок не одно число, они как бы разные)
<span>7987,35=1111111111001,01011(2)</span>
a, b = map(int, input().split())
if a > b:
print(a*b)