А куда гнаться-то? Пишут и пишут себе. Учитывая, что операция printf неделима даже.
А вот можно ввести такое дополнительное ограничение: потоки НЕ ПЛАНИРОВАТЬ, использовать cout (как вариант putchar()) Сответственно каждый поток должен анализировать написанное и дописывать чё надо. Например, написано:
C++ |
1
2
3
| Hello, word!
Hello, word!
Hello, wo |
|
в это время управление передаётся потоку X; он должен начать писать "r".
Лень не будет накропаю, а щас спать.