На рисунке выложена фигура из спичек, содержащая 6 маленьких квадратиков со стороной 1. нужно убрать 2 спички так, чтобы осталось ровно 5 маленьких квадратиков (и не было «торчащих» спичек). например, красную и синюю спичку убрать нельзя, потому что хоть и останется 5 маленьких квадратиков, но будет «торчащая» спичка. сколькими можно решить эту ?
Объяснение:
Если и считать всё в двоичной системе, то надо сначала все числа перевести в неё.
Перевод из шестнадцатеричной в двоичную- каждая шестнадцатеричная цифра заменяется на четыре двоичных, затем незначащие нули спереди- отбрасываются:
10₁₆ = 00010000₂ = 10000₂
Перевод из восьмеричной в двоичную- каждая восьмеричная цифра заменяется на три двоичных, затем незначащие нули спереди- отбрасываются:
10₈ = 001000₂ = 1000₂
Получаем в итоге пример:
10000₂ + 1000₂ + 10₂* 10000₂ = 10000₂ + 1000₂ + 100000₂ =
= 111000₂
Язык не указан → приведу пример на SWI-Prolog.
Код%Файл string_sortin.plsort([], [], _).sort([Head|Tail], Ordered, Qrd) :- sort(Tail, SubSorted, Qrd), put(Head, SubSorted, Sorted), order(Sorted, [], Ordered, Qrd).put(X, [], [X]).put(X, [H|T], [X,H|T]) :- compare(>, X, H).put(X, [H|T], [H|R]) :- put(X, T, R).order(X, _, X, ">").order([], R, R, "<").order([H|T], B, R, "<") :- order(T, [H|B], R, "<").select(">", Bufer, Bufer, _, ">").select("<", Bufer, Bufer, _, "<").select(S, Bufer, [S|Bufer], Ord, Ord).input_strings(Input, Bufer, Strings, Ord, ROrd) :- compare(=, Ord, "="), read_string(Input, "\n", "\r", _, String), select(String, Bufer, SS, Ord, OO), input_strings(Input, SS, Strings, OO, ROrd).input_strings(_, Strings, Strings, Ord, Ord). ?- current_input(Input), input_strings(Input, [], Strings, "=", Ord), sort(Strings, [R|_], Ord), writeln(R).