Codeforces / polygon-issue-tracking

polygon-issue-tracking
16 stars 2 forks source link

Вывод чекера по-русски в invocations отображается в протоколе кракозябрами #469

Closed dkirienko closed 2 years ago

dkirienko commented 3 years ago

Задача output-only-sample-problem, id=180607

В этой задаче чекер на питоне в UTF-8 и выводит русские сообщения. Они должны быть русскими, это нам нужно.

При запуске решения в Invocations вывод чекера (Comment) отображается в протоколе Run(s) details кракозябрами.

Если заменить кодировку чекера на CP1251, то результат будет точно такой же.

photo_2021-08-25_17-05-06

dkirienko commented 3 years ago

Вот как выглядит вывод этого текста в HTML. Там написано "Даны верные ответы на 5 заданий из 5", это превращается в двубайтовую кодировку, где буква "Д" становится байтами 0xC3 0x84.

изображение

MikeMirzayanov commented 2 years ago

Просто используйте в чекере на Питоне такой сниппет:

sys.stdout.reconfigure(encoding='utf-8')
sys.stderr.reconfigure(encoding='utf-8')