Блог пользователя MikeMirzayanov

Автор MikeMirzayanov, история, 5 лет назад, перевод, По-русски

Привет, Codeforces!

Вы же помните мой пост Новое: Диагностика решений на C++? Если нет, пожалуйста, прочтите его.

Совсем недавно я реализовал улучшенное отображение диагностики. Теперь на страницах со списком попыток (статус) вы иногда можете заменить вот такое нововведение:

По нажатию на значок  вы увидите код с выделенной проблемной строкой и описание возможной ошибки.

Как вам?

  • Проголосовать: нравится
  • +1754
  • Проголосовать: не нравится

»
5 лет назад, # |
  Проголосовать: нравится +70 Проголосовать: не нравится

It's great!

»
5 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

а другим языкам будет добавлена такая фишка?

»
5 лет назад, # |
  Проголосовать: нравится +33 Проголосовать: не нравится

fantastic!

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится +15 Проголосовать: не нравится

Thanks MikeMirzayanov for the efforts put into improving codeforces!

»
5 лет назад, # |
  Проголосовать: нравится +225 Проголосовать: не нравится

Cool thing. I just hope that people won't rely just on this. Remember that you can catch silly mistakes yourself with good compilation flags. You will find mistakes faster and you can use it during the contest too, while CF diagnostics are only for practice (right?).

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

Thanks!!!!!

But can we see this feature during contests?

/// upd: sorry for repeating comment.

»
5 лет назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

Awesome

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится -81 Проголосовать: не нравится

Maybe in future we will see smth like: "please stop doing this task, author's solution is not reliable"

»
5 лет назад, # |
  Проголосовать: нравится +19 Проголосовать: не нравится

A great addition to the existing system. Kudos!

»
5 лет назад, # |
  Проголосовать: нравится +31 Проголосовать: не нравится

How to turn this off? It makes me feel so stupid when I see "potential out of bounds error on line X"............. qwq. I would rather find it myself.

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +162 Проголосовать: не нравится

    What about coding in notepad and submitting without compiling first? Stupid compiler telling you there's a missing semicolon. :>

    • »
      »
      »
      5 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +28 Проголосовать: не нравится

      Yup, the testing system is clearly suitable for testing.

      (bad translation from a local Russian meme)

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +7 Проголосовать: не нравится

    If you don't click the icon, the tips wouldn't show. So, it actually is a switch.

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

Sir ,is this feature only works for GNU c++17 ?

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится

круто, добавьте такое-же на python, пожалуйста

»
5 лет назад, # |
  Проголосовать: нравится +33 Проголосовать: не нравится

наныли!

»
5 лет назад, # |
  Проголосовать: нравится +36 Проголосовать: не нравится

It must be disabled on contests.

»
5 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

It's awesome!!!. Great work Sir

»
5 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Cool! & Thanks!

I think contests would be more challenging if this feature is disabled for contestants!

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится +2 Проголосовать: не нравится

Is this going to be enabled on pretests during contests?

If not, how do I setup these diagnostics on my own system? I see usually that the diagnostics reported on Codeforces are from VS 2017 — is it possible to setup this on Linux? If not, how do I do it on Windows?

»
5 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

that is great and fantastic efforts

I am curious about its implementation and its limitations

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Great

»
5 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

It's really convenient to correct the error.

»
5 лет назад, # |
  Проголосовать: нравится +12 Проголосовать: не нравится

In fact,this is a good tool.But if people are depend on this without debug by themselves,that will be bad

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

awesome!!

»
5 лет назад, # |
  Проголосовать: нравится +43 Проголосовать: не нравится

Can we choose to turn this off for practice?

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится

    Can't you just not click to the  ?

    • »
      »
      »
      5 лет назад, # ^ |
        Проголосовать: нравится +22 Проголосовать: не нравится

      It gives a slight hint as to where your solution went wrong, even if you just see it and don't click on it. I would still like to find out that my solution has some sort of undefined behavior by myself instead of being told.

    • »
      »
      »
      5 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      It can make easy for me to believe that my logic is correct and implementation has something wrong. But I don't want that when doing the practice. I want to figure out myself what exactly is wrong, the logic or the code.

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +10 Проголосовать: не нравится

    While waiting for the feature to be implemented, it's possible to use some userscript or user stylesheet as a workaround.

    .diagnostics-icon {
    	display: none !important;
    }
    
»
5 лет назад, # |
  Проголосовать: нравится +20 Проголосовать: не нравится

please add an option to turn it off :(

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

I like it

»
5 лет назад, # |
Rev. 3   Проголосовать: нравится +5 Проголосовать: не нравится

Deleted. I 'm sorry for my unnecessary comment.

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Very helpful features.Nice work!!!!

»
5 лет назад, # |
  Проголосовать: нравится -16 Проголосовать: не нравится

Я так понял это и есть главный аргумент писать на c++

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

nice!

»
5 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

All we asked for a way to access large testcases for which our code fails! Just kidding, This UI will definitely help a lot! :)

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Wow! Fantastic!

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Great job!!

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

It's very great ,and it will be better to see this feature in contests it will help us find the mistake fast .

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Nice!!!!

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

It’s so good

»
5 лет назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

One of the reasons why codeforces is the best platform to practice and master competitive programming. Keep up the good work !

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

ok, I still think we need a way to turn this off, because when I submit some wrong solution to cf for practice it literally is stuck for like 2 minutes running the diagnostic and it is annoying to not know if it is just a judging system hold up or the diagnostic

  • »
    »
    5 лет назад, # ^ |
    Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

    I don't think this is the case. The diagnostic solution should also be executed in limited time. (otherwise it would be too easy to cause a DoS by doing #ifdef _GLIBCXX_DEBUG while(1); #endif)

    Also the diagnostic is only run if the solution run quickly, so even if it's a few times slower it should not take a few minutes.

    • »
      »
      »
      5 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      They give the diagnostic a lot more time to run, it is not infinite time, but it is still a lot more.

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

What about show participiant's place in result table after contest completed in every page.

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

So great!We can save a lot of time debugging!