Стоит - создать цепочку, в которой будут содержаться все числа от 0000 до 9999, причём длина этой цепочки должна быть минимальной. то есть например у нас есть цепочка из 40к символов - , нужно переставить цифры местами. по моим подсчётам длина цепочки минимальная равна 10003. создал я программку, которая в массив из 40к ячеей закидывает все это. теперь ,видимо, нужно в цикле смотреть все возможное но как это реализовать понятно, что цикл будет while(len(a))> 10003: а что в самом цикле? как уменьшать длину строки? если есть какие-то идеи, напишите . (python/pascal). важен не сам код, а понимание того, что нужно делать
211
336
Ответы на вопрос:
{если что, часть программы не нужна для построения цепочки. она просто иллюстрирует, что полученный результат верен. } var sq : array[0..999] of array[0..9] of boolean; co : array[0..999] of integer; ar : array[1..10003] of 0..9; i,j: integer; x: integer; t : boolean; begin for i : = 0 to 999 do begin for j : = 0 to 9 do sq[i][j] : = false; co[i] : = 0; end; for i : = 1 to 3 do ar[i] : = 0; i : = 3; t : = true; {write('000'); } while t do begin i : = i + 1; x : = ar[i-3]*100 + ar[i-2]*10 + ar[i-1]; if co[x] > = 10 then t : = false else begin j : = 1; while sq[x][j] do j : = (j + 1) mod 10; ar[i] : = j; sq[x][j] : = true; co[x] : = co[x] + 1; {write(j)} end; end; {writeln; } writeln('length: ',i - 1); {просто чтобы убедиться} for i : = 0 to 999 do for j : = 0 to 9 do sq[i][j] : = false; t : = true; j : = 0; i : = 1; while (i < = 10000) and t do begin x : = ar[i] * 100 + ar[i+1] * 10 + ar[i+2]; if sq[x][ar[i+3]] then t : = false else begin sq[x][ar[i+3]] : = true; j : = j + 1; end; i : = i + 1 end; if t and (j = 10000) then write('confirmed') end.
Чайник состоит из негорящей пласмасы, железа, стёкла. в нём нужно кипетить воду
Популярно: Информатика
-
TheAgentSquid28.06.2021 02:54
-
elizavety19.04.2020 00:47
-
саня133605.07.2021 12:07
-
ilugladyshev27.09.2021 16:11
-
sergeyshevchukp06kj308.04.2022 18:22
-
kseriii21.12.2021 14:34
-
тупой17725.07.2021 21:00
-
maksus160816.07.2021 15:27
-
Каролина999919.02.2021 10:42
-
miliolia12526.10.2022 13:07