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

Автор TheScrasse, история, 3 года назад, По-английски

I've just turned International Grandmaster. Now you can ask me anything in the comments.

Теги ask, ama
  • Проголосовать: нравится
  • +49
  • Проголосовать: не нравится

»
17 месяцев назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

Do you think pineapple on pizza is a crime

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

What does TheScrasse mean?

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

    I randomly generated "TheScrasse" while trying to come up with an Instagram username > 5 years ago. Somehow my friends liked it very much, and a few minutes later it became my "official" nickname.

    Here is some context if you're really curious.

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

I want to learn Italian,Is it hard language?Is it possible to learn Italian in 3 month

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

    As an Italian, I've never dealt with learning Italian as a second language :)

    Anyway, I guess learning Italian is not so hard (maybe it's as difficult as French or Spanish). If you're really serious about it, you can learn it in a few months.

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

How is it in Italy

I wanna move to Italy when I grow up

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

    I want to go away from Italy :(

    I mean, I think it's quite fun to visit Italy as a tourist, but maybe it's better to study / work somewhere else. This is an extreme example, but the situation is not much different on average.

»
17 месяцев назад, # |
  Проголосовать: нравится -8 Проголосовать: не нравится

What are the skills needed to reach Master ?

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

    You don't need any "advanced" algorithms to reach master (math, DP and DFS/BFS were enough in my case). Maybe "speedforces" and a good understanding of greedy are more useful.

    However, I think learning new algorithms / tricks (for example on USACO Guide) is not a bad idea. Even if you won't use them so often on Codeforces, they make you think in new ways and improve in the long run.

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

do you do duolingo

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

can you continue your tutorial blog with DP series? https://codeforces.net/blog/entry/101271

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

    I usually write tutorials when I find out that there is no tutorial on that topic. Since there are already a lot of tutorials about DP (for example, the ones on USACO Guide), I don't think I will write one unless I find something "new" to explain.

»
17 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
  • Can you Guide me with the problem I face while giving the contest? I can solve DIV2C most of the time while practising outside of the contest; however, solving some might take time. Still, in the actual contest, I could not build the intuition of DIV2C very fast, resulting in being unable to solve the problem(Most of the time). So what should I do to overcome this problem?
  • According to you, what is essential in a contest to reach an expert, fast solving DIV2C or solving DIV2D but very slowly?
  • Can you Review my profile ;) and guide me to reach an expert?
  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится +4 Проголосовать: не нравится
    • I think it's normal (it also happened to me in my first contests, and also during olympiads). I guess his "problem" will disappear gradually after doing enough contests.
    • You can reach expert in either way. For example, in one of my last 2 contests before reaching IGM I solved H, in the other one I speedsolved A B C D E F1. First, you can read both C and D, then decide which problem you like the most and eventually skip C and try to solve D (for example if D is a problem about your favorite topic).
    • I think you are doing quite well (you are actually improving), just continue solving problems from Codeforces or other sources, relax and you will eventually reach expert :)
»
17 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

What is the IGM?I can't find it in the Internet.

»
17 месяцев назад, # |
  Проголосовать: нравится -10 Проголосовать: не нравится

(very interesting question)

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

https://ratings.fide.com/profile/373201490

  1. Is that you ?
  2. Do you think you are naturally talented ?
  3. Does being good at chess help in competitive programming ?
  4. Did you struggle with ad-hoc problems in the initial days ?
  5. What do you do for a living ?
  • »
    »
    17 месяцев назад, # ^ |
    Rev. 2   Проголосовать: нравится +16 Проголосовать: не нравится
    1. Yes, that's me.
    2. I think I'm very talented, but also very lazy. For example I'm failing university: I think I've reached the point where talent isn't enough, and I need some effort to get results, but I'm not used to spend much time studying things I don't like.
    3. Maybe chess and competitive programming skills are correlated only slightly. I think I've seen newbies on Codeforces with > 2300 points on lichess, and GMs on Codeforces with < 1200 points on lichess. So, I guess playing chess doesn't improve your CP skills.
    4. No, actually ad-hoc problems were my strength (because I had some experience with math olympiads). For example, I was able to solve the infamous 1375F - Integer Game during the contest, but later I wasn't able to solve 1430E - String Reversal, which is much more standard and easier.
    5. I'm 18, I still don't have to worry about my living. I've tried a 3 months internship at Huawei to get some experience and see how it works, but I think I will continue working only after finishing university.
»
17 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

What skills are required to reach Pupil ?

Can you review my profile and suggest me some tips so that I can improve?

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

    Try this.

    In my opinion, if you want to become pupil / specialist, practicing on Codeforces is not so useful because it gives bad habits: in particular, in most easy problems on Codeforces, guessing the answer is easier than actually thinking.

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

what motivates you to get up in the morning? don't you feel the world is too dull?

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

    Assuming "the world is too dull", as a "less dull than others" I have the responsibility of making the world a better place.

    Anyway, the people around me (who study in my university) and a lot of other people are definitely not "dull": they are much more hardworking, curious and socially skilled than me, and I have to learn a lot from them.

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

Are you planning to participate in UOJ NOI Round #7, as hos.lyric is?

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

    I can't, I'm really busy with exams these days. I was also going to skip the last div1 rounds, but I did them anyway just because I was too tired to continue studying for university.

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

Were you expecting people to check the blog history?

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

    I tried to replicate this. Unfortunately, it backfired because we are all receiving the necroposting warning. I realized only later that the blog history is also visible.

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

do you talk a lot in your mind when solving problem ? like you can actually hear you voice out loud, i wonder if it was just me who have that kind of problem

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

    Well, if I can (i.e., there is no one else in my room), I actually speak out loud during the contest, like I was explaining my thoughts to someone else, and it helps me a lot. Otherwise, I murmur (so that no one hears me).

    In any case, I also write / draw a lot on paper during the contest, and I guess that would help anyone.

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

is your profile of a rotten tomato?

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

Do you have any plans before becoming a Grandmaster or you just do random problems? I want to know what is your colledge also and the related knowledge to become a Grandmaster.

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    1. My main goal at that time was training for olympiads (mainly on USACO Guide). I reached GM only as a side effect.
    2. Scuola Normale Superiore
    3. The most advanced algorithm I've used before becoming GM is Dijkstra. See this answer.
»
17 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

During contests or problem solving I usually try to implement my solutions without proving them, because of which I get stuck while implementing or I realize it too late that my solution was wrong. Have you also done that mistake and what do you do to avoid it?

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

    While solving a problem, I write any observation / step on paper (and I usually make many "small" and provable steps). As a side effect, when I think I have a full solution, I can double check that the whole "path" to the solution makes sense.

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

What do you recommend to decrease debug time and avoid edge cases? I solve a lot of problems daily but it almost always takes 2-3 wrong answers before I get it.Also, are there any resources you like to stress test?

  • »
    »
    17 месяцев назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится
    • Sometimes the "edge cases" are not covered by the examples. If you find an "edge case" while you solve the problem, you may want to create and test an example for that case.
    • To avoid finding "edge cases" only after submitting, you should try to make sure the solution is correct before implementing.
    • Before writing the code, make a sketch of how the code will look like at the end.
    • Try writing cleaner code. For example, try to avoid stuff like a[b[c + 1].first] - 1, which makes the code much harder to debug. A slightly longer code is better than code that is difficult to read.
    About me writing code
    About edge cases
    • »
      »
      »
      17 месяцев назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      Thank you so much, do you ever stress test your code, if so, when and how do you do it?

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

        Sorry, I forgot to reply to that question.

        I've never used tools for stress testing. If I get WA, first of all I check undefined behaviors using some flags. Then, I try to generate small cases by hand. Sometimes it doesn't work, so I write a generator and a brute force. If the generator is strong enough (most of the times, all the small cases + a few random larger cases are sufficient), you will find the error.

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

When you train do you often look editorials if you can't come to the solution (or when you trained before becoming master / grandmaster)?

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

    Yes, I read the editorial quite often. If I feel I'm not close solving a problem even after trying for a lot of time, I look at the editorial.

    • Skipping the problem and forgetting about it doesn't make sense (you are supposed to learn more from the problems you can't solve than from the problems you can solve).
    • Spending a lot of hours on a single problem doesn't make sense (during a contest, you only have a few hours). Sometimes you can try very hard problems and spend much time on them, but I think it shouldn't be your main training strategy.
    • Reading the editorial and wondering "how didn't I think about this?" can be extremely useful.
»
17 месяцев назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Could you please join Politecnico di Torino so you can team up with N.N_2004 and fold everybody as swerc and get us a world final spot?

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

Do You think Italy can qualify for the next Fifa worldcup?

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

    As far as I know, Italy team is usually decently strong and it's supposed to qualify, so I hope it doesn't mess up like last time...

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

Why it is a blueberry now?

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

    I'm preparing a Div. 1 on Codeforces, so I'm using Codeforces colors (blue, yellow, red) for a while.

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

I am preparing for olympiad any adivice on where to practice and what algos do i need to know(please advice that is different from everyone's advice on codeforces)