Вывод правильный, но 3-е и 4-ое условия не выполняются, я не понял, что там имелось ввиду с этим obj. Кроме того когда решал задачу ничего не придумал лучше, чем этот чудесный механизм из кучи кода))