Убери из этого алгоритма фд и поменяй местами скатер с трапой и получится практически то же самое.