Сергей-4030> Так? Я правильно понял задачку?
В валидном HTML не должно быть «пересечений» тэгов. Т.е. конструкции вида
code html4strict
запрещены (хотя браузерами всеми популярными всё равно как надо отобразятся).
Так что, ты всё правильно понял, нужно перед закрытием внешнего тэга закрыть незаконченный внутренний, а потом вернуть его:
code html4strict
<b>...
<i>...
</i></b><i>...
</i>
Но в случае варианта, типа:
code html4strict
можно поменять начальные тэги местами:
code html4strict
Вот в этом и стоит главная трудность сабжевой задачи.
Я решил её не совсем честно

Но, вроде, на всём, что тестировал, работает. Хотя гарантировать работу в любых случаях я не могу.
Татарин, вон, судя по всему, решил честно, но получил совершенно ужасный N+N*N!

(если я правильно понимаю факториал квадрата).