codemastercpp's blog

By codemastercpp, history, 3 years ago, In English

Hello CF,

UPD:

Sorry for necropost(?), but I had a lot of DMs about website being down, so I've updated it.

But the old link is invalid now, and it is hosted at: https://c2-ladders-juol.onrender.com

Thnx


I've seen a lot of people say very good things about a2oj ladders but I never used it because the problems in it are very old, as it was constructed by ahmed_aly 4-5 years ago, so I decided to try to recreate the ladders with updated data of codeforces, especially because nowadays CF is quite ad-hoc (and I like it:D).

I mostly followed the same procedure as described here, with some little changes, one of them being not having 800 rated problem in 1500 ladders, these ladders are based on problem rating. You can visit the website here https://c2-ladders.com

If you want to learn more about how I did it, I've uploaded a video on how I constructed it, which you can see here: https://youtu.be/xQuNwSFi4Ag

The website and the script both are open sources, feel free to make a PR if you want some change or just tell me in comments.

Website: https://github.com/prince776/c2ladders

Script: https://github.com/prince776/scripts-yt/tree/master/ladder

Here's a preview

Why C2Ladders? Well it stands for codemastercpp's codeforces ladders.

Full text and comments »

  • Vote: I like it
  • +207
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

Lack of creativity be like:

Full text and comments »

  • Vote: I like it
  • +50
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

So I have a YT channel and I did a coding challenge(like coding train) to visualize the building process of a segment tree in 15 mins. I also explained briefly what segment trees are (In case you don't know what it does).

I figured it can be relevant/helpful to people here as Segment trees are mostly used in CP.

So if you'd like to see for yourself, link: https://youtu.be/nM16pnE1ayQ

Spoiler

Full text and comments »

  • Vote: I like it
  • +5
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

So yeah, back with another video editorial, unfortunately official editorial already out, but still if anyone likes video format.

Link: https://youtu.be/mDLus5LolsM

Contains solutions from A to D

Full text and comments »

  • Vote: I like it
  • +9
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

Hello there

I've done a screencast of Atcoder ABC 226 that just happened, you can watch it here: https://youtu.be/3xSS8u3P0eg

If you wanna see it, you check it out, I tried to explain my thought process along the way so it's not that terrible and kind of a solutions video too.

LMK if you want a separate solutions video.

Full text and comments »

  • Vote: I like it
  • +9
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

The last contest of CodeChef (this one) had 2 rerooting problems and it wasn't really solved by many people(even in Div1), so I figured it's something not many people know.

So I have made a tutorial video on the same: https://www.youtube.com/watch?v=7_huTWwl5jM&ab_channel=CMC

In it I discuss:

  • How to identify which problem requires this

  • How to go about solving it

  • How to implement without much hassle

  • Some problems that require it and their solution/hint

When I first came up with this rerooting my implementation was pretty terrible but now it's much better IMO, so I also wanted to share it.

Full text and comments »

  • Vote: I like it
  • +47
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

Hello everyone

I've created a video editorial for Problems A to E from recent Codeforces Round #753 (Div. 3).

It's unofficial of course.

https://www.youtube.com/watch?v=kV8jNV24kVo&ab_channel=CMC

I tried to make it for the last ABC too but messed it up, but this time I finally made it.

Full text and comments »

  • Vote: I like it
  • +12
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

UPDATE:

New video on reaching 6 star on codechef https://www.youtube.com/watch?v=9qtM5NiHFUE&ab_channel=CMC

I'll definitely make CF videos, once I stop bricking :sadge:


Hey CF people,

So I've always wanted to start a YT channel and am finally starting it.

For the first video, I Fullsolved yesterday's Codechef starter contest and recorded it.

It's like a condensed version of a normal screencast where I summarize what happened during the contest, how I approached the problems, and how I dealt with WAs/TLEs that I got.

I've tried to make it entertaining while still explaining my approach to the problems.

I'm not sure how many people have already done this format for contests but here I am, yet another guy doing this. Please do watch it and give some feedback. I will be making more videos related to contests, tutorials, C++ related stuff so you can also subscribe:DD

Hope you all like it: https://www.youtube.com/watch?v=E2T9zR9kIKs&ab_channel=CMC

If you like this more than traditional screencasts do tell in comments so I can decide how to do next round. Thanks again :D

Full text and comments »

  • Vote: I like it
  • +58
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

First of all congrats to sus for breaking into the top 10 contributors. I think it's a great thing because now maybe people would be less biased towards downvoting low-rated people's posts and comments.

But it sheds light on a pedantic issue, the term "contribution" is misleading, as only some part of it is earned through actual contributions, and other part is earned through shitpost or just by being higher rated.

So now what should it be renamed to?

I'll suggest Reputation, as it fits it more. This way it'd be natural to assume people with higher reputations either contribute a lot, are just higher rated, do quality shitpost, or a combination of all these.

New people won't feel bad about losing reputation by asking a stupid bugaboo, as it's natural, but losing contribution on asking a stupid question must be weird IMO.

Feel free to add your suggestions, and ur reasoning behind it.

P.S: As I said, it's a minor issue, and nothing would be affected even if it stays as it is.

Full text and comments »

  • Vote: I like it
  • +472
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

You got click baited, this is about a Competitive Programming discord server with that name.

Since CwD got nuked for some reason, the community there has tried to rebuild it, we even have the annoying Dyno bot we all unanimously hated.

https://discord.gg/DEKQX9VJ

You can join via this link.

Full text and comments »

  • Vote: I like it
  • +64
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

It is with great pleasure, I'm informing my fellow Competitive Programmers that we have successfully gotten rid of one massive nerd of our community:demoralizer

YES, this nerd is finally leaving CP, after no-lifing for years. This guy has god knows how many alts(4+) and practices in all of them. If you see his ;plot solved you'll realize that this guy needs some mental help. He also has a YT channel where he posts solutions to already solved problems like an idiot

Don't believe me? here see these:

https://youtu.be/p-_ZrYKWl_4

This guy is a big loser, even after being a GM he failed to get PPO in uber, what a loser, maybe not as huge of a nerd as we thought.

YES!!! We are finally getting rid of him. Time to celebrate!!!

To demoralizer Good luck in your future endeavours so that you never have to grace us with ur nerdy persence ever again!

Good byee nerd!!!! Hope to see you NEVER

Spoiler

Full text and comments »

  • Vote: I like it
  • +235
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

We know that keeping aside extra memory usage, long long is faster than int in x64

It’s possible to access data items that are narrower than the width of a machine’s data bus, but it’s typically more costly than accessing items whose widths match that of the data bus. For example, when reading a 16-bit value on a 64-bit machine, a full 64 bits worth of data must still be read from memory. The desired 16-bit field then has to be masked off and possibly shifted into place within the destination register.

But if we are also depending on vectorization for speeding up execution, ints perform better

I say this based on the fact that vectorization width is higher with 32 bits integers

For example, in the following example:

    for (int i = 0; i < n; i++)
        c[i] = a[i] + b[i];

With #define int long long

main.cpp:114:5: remark: vectorized loop (vectorization width: 2, interleaved count: 2) [-Rpass=loop-vectorize]
    for (int i = 0; i < n; i++)

Without #define int long long

main.cpp:114:5: remark: vectorized loop (vectorization width: 4, interleaved count: 2) [-Rpass=loop-vectorize]
    for (int i = 0; i < n; i++)

So normal access speeds up but vectorization slows down with 64 bit integers, then what would be the final outcome? would 64 bit integer be better or 32 bit?

Full text and comments »

  • Vote: I like it
  • +14
  • Vote: I do not like it

By codemastercpp, history, 3 years ago, In English

Hello CF,

Update:

Just after releasing it I got busy and stopped working on it, but recently have made some changes:

  • Rooms are now using 128-but UUIDs, so no actual chances that anyone can invade ur room without your knowledge. Your previous rooms will still be usable tho

  • Large Code, Input and Output are supported now

  • Font Size is editable now

  • When a user joins a room, syncing is fixed

  • Live code sharing has been improved and now multiple people can write on different lines, but very fast typing and typing on same line can still cause issues :catThink:

  • Deployment procedure is also very easy now, so any changes in future will be refelected very soon in the actual website

So Yeah, in end it is much more usable alone than it is with many people in same room. Anyways, that's the update.


So recently I've been working on a little project which I think might be useful in CP as well, so this blog is to showcase it, it's open-source so if you like it, you can contribute as well.

Link: http://discode.southeastasia.cloudapp.azure.com/

Github: https://github.com/prince776/discode

Discode platform allows you to create rooms where you can code in an online IDE(Very similar to Sublime Text) and everyone who joins the room can see ur code live, they can also collaborate. There are also optional voice rooms that you can join for better collaboration. So some features of discord with live coding, hence discode.

This is an example of a room, as you can see a very similar setup to many sublime text users, so if your setup is not working or you're on a different system, you can code very easily here, c++ is C++ 17 so no worries. Hence I'm posting it here.

This is totally anonymous, so no need to sign up or anything just to compile code online, anyone can join any room, create any room, run any code, with no restrictions.

Your room history, theme, and language choice are stored for a better experience, but it's on the front end. Only the contents of the room are saved in a DB so you can access them later on.

Do try it and tell how you liked it, voice rooms don't work on firefox yet because navigator.mediaDevices is annoying, so if you know a fix, pls contribute.

P.S: This project might be the reason for my recent -150 delta:sadge:

Full text and comments »

  • Vote: I like it
  • +98
  • Vote: I do not like it

By codemastercpp, history, 4 years ago, In English

So these days I open code forces, look to right and "cheating, CHEating, CHEAtiNG, CHEATING", that's all I see. Is there a way to get rid of these stupid blogs?

While I'm at it, also a suggestion: Please add some sort of ignore list where we can add these justice warriors so we don't have to go through this every day. This way everyone can have a customized feed. People who really like catching cheaters can have their little paradise.

Full text and comments »

  • Vote: I like it
  • +76
  • Vote: I do not like it