Представим куб в виде графа его каркаса. Пронумеруем все вершины куба цифрами от 1 до 8. Задача сводится к обычному обходу в ширину. Для четных N ответ будет 0, т.к. нельзя дойти на противоположную вершину за четное кол-во шагов. Ответ будет расти в геометрической прогрессии в зависимости от N. Программа:const m: array[1..8, 1..8] of byte = ((0, 1, 1, 1, 0, 0, 0, 0), (1, 0, 0, 0, 1, 0, 1, 0), (1, 0, 0, 0, 1, 1, 0, 0), (1, 0, 0, 0, 0, 1, 1, 0), (0, 1, 1, 0, 0, 0, 0, 1), (0, 0, 1, 1, 0, 0, 0, 1), (0, 1, 0, 1, 0, 0, 0, 1), (0, 0, 0, 0, 1, 1, 1, 0)); var n, i, j, k: integer; a: array[0..100, 1..8] of int64;begin read(n); a[0, 1] := 1; for k := 1 to n do for i := 1 to 8 do for j := 1 to 8 do if m[i, j] = 1 then a[k, i] := a[k, i] + a[k - 1, j]; write(a[n, 8]);end.