嘿家伙这是一个视频 hey guys this is going to be a video
关于我的竞争编程之旅 about my competitive programming journey
这是一个视频是什么意思好吗 what does that mean well it's a video
关于我我现在的位置 about how i got to where i am now
比如我的网站和平台 for example the websites and platforms i
使用 used
以及这些类型的不同 as well as these sort of different
资源我有练习 resources i had for practicing
和学习的事情以及你如何 and learning things as well as how you
可以使用那些 can use those
资源为自己和 resources for yourselves and
additionally it's going to be about additionally it's going to be about
一般喜欢比赛的心态 just in general like contest mentality
你应该等的方法 and the sort of like ways you should be
接近的事情 approaching things
因为东西是也 because stuff like that is also
我发现非常重要 incredibly important as i've found out
我自己 myself
作为一个免责声明这是当然不是 as a disclaimer this is of course not
作为一个免责声明这是当然不是 the only way to like get good this is
只是我所做的,这是一个可能的 just what i did and it's a possible
假设一个路线图,您可以使用 let's say a roadmap that you can use and
如果你想要为自己 follow if you want for yourself
所以我是谁 so who am i
为什么我有权利做这个 and why do i have the right to make this
视频好了 video well
我有很多的事情 i have many things that would be
有些人令人印象深刻 impressive to some people
例如在代码我力量 for example on code forces i am
目前 currently
and have just reached international and have just reached international
大师在厨师我的代码 grandmaster on code chef i
我是七星会勉强但吗 am seven star i'll be at barely but
我是七星会勉强但吗 still
许多比赛现在我们可以七星 seven star for many contests now we can
许多比赛现在我们可以七星 go over some recent contests too on code
果酱 jam
最近的一个我 the most recent one i was a
半决赛,最终与漂亮 semi-finalist and ended up with a pretty
排名在第三轮但可能不好 bad rank in the third round but it could
更好的我呢 have been better had i
我的意思是它是四个月前 i mean it was four months ago so it
现在我想说的更好 would be better now i would say
同时就在一天前 and at the same time just a day ago on
的 the
最近我放置24日启动一轮 recent kickstart round i've placed 24th
如果我再一次会更好 and again would have been better if i
没有记录但无论如何无关紧要 wasn't recording but anyway irrelevant
这些是我的一些成就和 those are some of my achievements and
这就是我要说话 well that's what i'm going to be talking
关于 about
所以我被首次引入竞争 so i was first introduced to competitive
编程的本质上是通过口口相传 programming essentially by word of mouth
我的朋友我在 my friends i was at
实际上,我听到一些生日聚会 some birthday party actually and i heard
我的朋友们谈论它 my friends talking about it
一些关于编程和我的比赛 some contest about programming and i
我认为如果朋友都这么做的原因 figured if my friends are doing it why
不正确的是 not right just
试一试这比赛 give it a shot so this contest was
yusuko就是呼吁美国 called yusuko which is for the usa
计算发行和本质上的 computing olympiad and essentially it's
资格 the qualification
方案ioi国际奥林匹亚 scheme for ioi the international olympia
和信息 and informatics
这是一个巨大的竞争就像 which is a huge competition it's like
世界一流的 world class
和uco基本上是入门级如何 and uco is basically the entry level how
他们选择的学生来自美国 they select students to send from the us
有四个部门青铜银 there are four divisions bronze silver
黄金和白金 gold and platinum
为了增加难度和 in order of increasing difficulty and
每个人都开始在青铜和进展 everyone starts in bronze and progresses
通过他们的分歧 through the divisions as they
在比赛 do well in contests
所以我 so i
一开始, started off by
just trying out bronze and then seeing just trying out bronze and then seeing
how i would do the only program i had how i would do the only program i had
probably programming experience i had probably programming experience i had
was was
from school basically just some like from school basically just some like
basic basic
uh entry-level classes but uh entry-level classes but
it turns out that this bronze contest it turns out that this bronze contest
that i ended up doing that i ended up doing
was i think the easiest one of the year was i think the easiest one of the year
and possibly the easiest one for a long and possibly the easiest one for a long
time time
because i in basically just an hour because i in basically just an hour
ended up with a perfect score on all ended up with a perfect score on all
three problems three problems
and yusiko has always three problems and yusiko has always three problems
where each problem is worth the same where each problem is worth the same
points and there are multiple test cases points and there are multiple test cases
if you pass all of them you immediately if you pass all of them you immediately
get full points for the problem and if get full points for the problem and if
you don't pass all of them you don't pass all of them
you get a score proportional to the you get a score proportional to the
number of test cases you get number of test cases you get
these rules aren't exactly relevant but these rules aren't exactly relevant but
in case you're interested that's how it in case you're interested that's how it
works works
and i would say it's still a good and i would say it's still a good
contest to do even if you're not contest to do even if you're not
in the us and not trying for ioi there's in the us and not trying for ioi there's
still some value you can get out of still some value you can get out of
doing these problems in these contests doing these problems in these contests
so bronze went amazing i got a perfect so bronze went amazing i got a perfect
score score
and in usico and you get a perfect score and in usico and you get a perfect score
on one division it lets you immediately on one division it lets you immediately
take take
the contest of the next division which the contest of the next division which
is called in contest promotion is called in contest promotion
so i promoted to silver and i tried that so i promoted to silver and i tried that
too too
because again why not and uh because again why not and uh
well silver did not go so well i ended well silver did not go so well i ended
up with up with
in four hours i ended up with one test in four hours i ended up with one test
case out of 30 case out of 30
and it was the sample but the sample is and it was the sample but the sample is
the one they give you to the one they give you to
make sure you understand the problem make sure you understand the problem
like it's a free test case and that was like it's a free test case and that was
the only thing i got which is kind of the only thing i got which is kind of
sad sad
and you know i would get that a lot of and you know i would get that a lot of
people would be people would be
discouraged by this that there's a discouraged by this that there's a
contest that they tried and they just contest that they tried and they just
absolutely horrendously failed and got absolutely horrendously failed and got
nowhere nowhere
because i was basically getting nowhere because i was basically getting nowhere
and and
i mean it's just not it's just kind of i mean it's just not it's just kind of
not a good mentality to have not a good mentality to have
to be hung on failure too much to be hung on failure too much
so what i did was instead of being sad so what i did was instead of being sad
and and
like not being motivated to continue like not being motivated to continue
or start competitive programming i or start competitive programming i
instead decided to take this failure instead decided to take this failure
personally personally
and i made it my mission over the next and i made it my mission over the next
three months to beat this silver three months to beat this silver
division division
which proved to be quite hard which proved to be quite hard
so uziko has four contests i did the so uziko has four contests i did the
first and the other three are a month first and the other three are a month
apart apart
each and they're all like the same each and they're all like the same
format just different problems format just different problems
obviously so i started to obviously so i started to
practice for the next use code contest practice for the next use code contest
and and
one thing i used the most important one thing i used the most important
thing was a site called use code thing was a site called use code
training training
which has definitely a bad reputation which has definitely a bad reputation
for being old for being old
and kind of outdated but i still think and kind of outdated but i still think
it's very valuable it's very valuable
because basically just because of its because basically just because of its
format it has good lectures on necessary format it has good lectures on necessary
concepts that you need to know concepts that you need to know
and it has problems relevant to those and it has problems relevant to those
concepts to help you practice them as concepts to help you practice them as
well as well as
different sorts of problems that just different sorts of problems that just
help your general thinking ability help your general thinking ability
and it also forces you to solve without and it also forces you to solve without
editorials which means that editorials which means that
if you don't know how to solve a problem if you don't know how to solve a problem
you can't like move on you have to keep you can't like move on you have to keep
trying until you get it trying until you get it
and that also helps you like improve and that also helps you like improve
your thinking process your thinking process
and just become a better problem solver and just become a better problem solver
in general i think it's a great in general i think it's a great
format and that more people should start format and that more people should start
with it with it
but anyway that was what i used eusko but anyway that was what i used eusko
training and the combination of training and the combination of
practicing other bronze and silver practicing other bronze and silver
problems mostly silver problems mostly silver
so a month went by and contest two so a month went by and contest two
rolled around rolled around
and well again it wasn't that easy and well again it wasn't that easy
i actually ended up solving two problems i actually ended up solving two problems
and i was very very close to gold and i was very very close to gold
i was two test cases off out of around i was two test cases off out of around
30 30
which was to say the least disheartening which was to say the least disheartening
well you know once again you can't let well you know once again you can't let
failure hurt you too much because failure hurt you too much because
i mean look at the progress i had gone i mean look at the progress i had gone
from solving zero problems and getting a from solving zero problems and getting a
single test case to almost making goal single test case to almost making goal
already already
so that was good and instead of so that was good and instead of
quitting i continued and silver became quitting i continued and silver became
even more personal now even more personal now
to get through so for another month i to get through so for another month i
just went through the same training just went through the same training
procedure procedure
continue use go training did more silver continue use go training did more silver
problems and contest three problems and contest three
it didn't go well either i actually it didn't go well either i actually
ended up only solving ended up only solving
one problem and the other two well one one problem and the other two well one
of them was because of a stupid mistake of them was because of a stupid mistake
they're going to be a lot of stupid they're going to be a lot of stupid
mistakes that happen mistakes that happen
and you kind of just have to like and you kind of just have to like
you can't dwell on them they're going to you can't dwell on them they're going to
happen for sure and instead of dwelling happen for sure and instead of dwelling
on them the best thing to do is to make on them the best thing to do is to make
it so you don't mess up like that again it so you don't mess up like that again
and that was what i tried to do so three and that was what i tried to do so three
i failed once again ended up with i failed once again ended up with
just over half the necessary credit to just over half the necessary credit to
promote but it was not nearly enough promote but it was not nearly enough
and then another month went by i and then another month went by i
practiced even harder practiced even harder
tried very hard to get past silver and tried very hard to get past silver and
in in
the final contest which is the notorious the final contest which is the notorious
u.s u.s
open where the problems are harder and open where the problems are harder and
you have five hours because the problems you have five hours because the problems
are intentionally harder are intentionally harder
well i ended up passing silver well i ended up passing silver
actually i ended up acing silver only actually i ended up acing silver only
because i managed to because i managed to
cheese a stupid solution through a cheese a stupid solution through a
geometry problem that i wasn't actually geometry problem that i wasn't actually
able to solve able to solve
but i ended up in contest promoting to but i ended up in contest promoting to
gold and gold and
in cold well this totally came as a in cold well this totally came as a
surprise to me surprise to me
but i ended up basing gold too but i ended up basing gold too
somehow i still don't know how somehow i still don't know how
one of one of the reasons was because i one of one of the reasons was because i
ended up choosing a graph problem ended up choosing a graph problem
with an unintended like of one math with an unintended like of one math
solution that wasn't supposed to pass solution that wasn't supposed to pass
but did but did
because they ended up designing their because they ended up designing their
problem badly problem badly
and it was a very easy thing to fix if and it was a very easy thing to fix if
they just changed the numbers around they just changed the numbers around
my solution wouldn't have worked but the my solution wouldn't have worked but the
original solution still would have original solution still would have
so it was kind of luck in that regard so it was kind of luck in that regard
but nonetheless i actually ended up in but nonetheless i actually ended up in
contests promoting to platinum contests promoting to platinum
and then in platinum i got totally and then in platinum i got totally
destroyed not really interesting i just destroyed not really interesting i just
got like nothing it was got like nothing it was
very very hard platinum is the worst very very hard platinum is the worst
yeah so that was in detail yeah so that was in detail
basically my first year of experience basically my first year of experience
with usico with usico
um after that well it kind of just um after that well it kind of just
became more chill i became more chill i
definitely got burned out from doing definitely got burned out from doing
like too much practice in those three like too much practice in those three
months because i was basically like months because i was basically like
putting as much as my free as much of my putting as much as my free as much of my
free time as i could into just doing free time as i could into just doing
that i don't know why i was so that i don't know why i was so
determined but i was determined but i was
i think part of the motivation was i think part of the motivation was
having friends that i wanted to beat having friends that i wanted to beat
and i recommend doing that too just and i recommend doing that too just
having other people you can compete having other people you can compete
against because that's always against because that's always
fun and competitive and just helps you fun and competitive and just helps you
be more motivated to practice and stuff be more motivated to practice and stuff
if you see them getting better you if you see them getting better you
should should
get better yourself to match them get better yourself to match them
but anyway yeah that was those three but anyway yeah that was those three
months were a lot i ended up like months were a lot i ended up like
becoming burned out mostly and even becoming burned out mostly and even
though though
reaching platinum was inspiring and the reaching platinum was inspiring and the
next year the goal was to get beyond next year the goal was to get beyond
platinum platinum
into the training camp uh that wasn't into the training camp uh that wasn't
gonna happen for a while gonna happen for a while
so for the next two months i kind of so for the next two months i kind of
just chilled finished off the usco just chilled finished off the usco
training training
um did a couple of code chef contests um did a couple of code chef contests
but that wasn't but that wasn't
really interesting to me at that time so really interesting to me at that time so
that's not much that's not much
and then i found out about code forces and then i found out about code forces
and and
i did a few basic easy problems like not i did a few basic easy problems like not
really much really much
just a generally chill period just a generally chill period
and then later i ended up deciding that and then later i ended up deciding that
i wanted to do contests on code forces i wanted to do contests on code forces
and these contests were fun first and these contests were fun first
contest i ended up solving three contest i ended up solving three
problems problems
um it was inspiring i was almost expert um it was inspiring i was almost expert
in my first contest in my first contest
which i was happy about because it meant which i was happy about because it meant
that my platinum experience was more that my platinum experience was more
valuable than i thought it was even on valuable than i thought it was even on
other sites other sites
so that was fun and so that was fun and
my practice at that time i was done with my practice at that time i was done with
using training i wasn't on code chef using training i wasn't on code chef
anymore it was just kind of co-forces anymore it was just kind of co-forces
and what i was doing instead of trying and what i was doing instead of trying
to get into new problems to get into new problems
is i was just kind of making the most is i was just kind of making the most
i could out of the contest i was doing i could out of the contest i was doing
that is i was up solving problems that i that is i was up solving problems that i
couldn't in contest couldn't in contest
and at the same time i was taking time and at the same time i was taking time
to learn new concepts that i didn't to learn new concepts that i didn't
understand before so that when they came understand before so that when they came
up in contests later i would be able to up in contests later i would be able to
use them which is also closely related use them which is also closely related
to up solving because to up solving because
many times there were concepts i didn't many times there were concepts i didn't
know in the problems i couldn't solve know in the problems i couldn't solve
so that was a another period of three so that was a another period of three
months months
where i just did a bunch of contests and where i just did a bunch of contests and
man there were so many stupid mistakes man there were so many stupid mistakes
in that period on this period of my in that period on this period of my
graph for like three months i was kind graph for like three months i was kind
of just like or two months i guess i was of just like or two months i guess i was
kind of hard stuck in expert kind of hard stuck in expert
around 1800 because almost every contest around 1800 because almost every contest
there would be some stupid mistake that there would be some stupid mistake that
totally destroyed my performance totally destroyed my performance
and the worst one i remember was when i and the worst one i remember was when i
did extremely well in a div 2 did extremely well in a div 2
and i was set to be 17th place before and i was set to be 17th place before
system tests and then after system tests and then after
after system tests if you can get what after system tests if you can get what
guess what happened guess what happened
well i failed problem b and it dropped well i failed problem b and it dropped
me down to 55th me down to 55th
which is of course still an amazing rank which is of course still an amazing rank
but but
what would have gotten me to candidate what would have gotten me to candidate
master almost immediately ended up master almost immediately ended up
instead getting me the high expert and instead getting me the high expert and
then i spent a lot of time not being in then i spent a lot of time not being in
candymastic candymastic
but the very least it made the point but the very least it made the point
where i did finally end up breaking into where i did finally end up breaking into
candid master candid master
so much more satisfying so you know even so much more satisfying so you know even
if you fail if you fail
it'll just make the inevitable victory it'll just make the inevitable victory
you have better on in the future you have better on in the future
there are a lot of reasons to not dwell there are a lot of reasons to not dwell
on failure this is one of them on failure this is one of them
so after reaching canada master i so after reaching canada master i
decided that i wanted to decided that i wanted to
get back into usago because get back into usago because
well the next stage of you skill after well the next stage of you skill after
platinum was a thing called training platinum was a thing called training
camp which is essentially they camp which is essentially they
used to go administrators take the top used to go administrators take the top
competitors from platinum competitors from platinum
and they ship them off to a place where and they ship them off to a place where
they essentially compete for the chance they essentially compete for the chance
to be in the ioi team to be in the ioi team
and i definitely wasn't expecting to and i definitely wasn't expecting to
make ioi or anything like that but it make ioi or anything like that but it
was was
and in fact the structure of the camp and in fact the structure of the camp
wouldn't even let me do it in that year wouldn't even let me do it in that year
but but
camp was the next stage so i wanted to camp was the next stage so i wanted to
get there that was my next goal get there that was my next goal
so i spent the three months before the so i spent the three months before the
december contest december contest
um grinding a lot of usco style problems um grinding a lot of usco style problems
that is that is
the problems with data structures um the problems with data structures um
generally graphs and generally graphs and
trees specifically and also dynamic trees specifically and also dynamic
programming programming
i was doing this on code forces i was doing this on code forces
sometimes with difficulty levels of like sometimes with difficulty levels of like
2100 to 2400 it's a reasonable estimate 2100 to 2400 it's a reasonable estimate
for platinum for platinum
typically harder actually but i wasn't typically harder actually but i wasn't
ready for those yet ready for those yet
um at the same time i was also of course um at the same time i was also of course
practicing platinum problems and practicing platinum problems and
um in usico when there wasn't a platinum um in usico when there wasn't a platinum
division the gold division was the division the gold division was the
equivalent so i was also doing problems equivalent so i was also doing problems
from the old gold division from the old gold division
as well as platinum because of course as well as platinum because of course
it's best to practice the things that it's best to practice the things that
you're actually trying to get good at you're actually trying to get good at
so yeah basically platinum problems and so yeah basically platinum problems and
some data structure heavy problems from some data structure heavy problems from
co-forces co-forces
kind of just like alternating between kind of just like alternating between
those two those two
um that was contests that was for um that was contests that was for
contest one and when contest one contest one and when contest one
actually rolled around actually rolled around
well i did very well on that one i got well i did very well on that one i got
19th 19th
i think and ended up on the leaderboard i think and ended up on the leaderboard
of what they call of what they call
top competitors which is just people who top competitors which is just people who
got above a certain good score got above a certain good score
so i solved a problem and kind of a so i solved a problem and kind of a
problem and a half problem and a half
because there are subtasks which was because there are subtasks which was
good enough good enough
and then after that i basically ramped and then after that i basically ramped
the difficulty up to the difficulty up to
just basically only 2400s in the same just basically only 2400s in the same
category as code forces category as code forces
and i continued to try and finish off and i continued to try and finish off
the rest of the old gold problems as the rest of the old gold problems as
much as i could do much as i could do
and well i was preparing for the second and well i was preparing for the second
contest contest
and so when that rolled around well i and so when that rolled around well i
should have been even more prepared should have been even more prepared
than the first contest but um didn't go than the first contest but um didn't go
so well so well
i actually ended up solving nothing i i actually ended up solving nothing i
got got
maybe like three test cases of one maybe like three test cases of one
problem which wasn't even a single problem which wasn't even a single
subtask it was a very weird verdict subtask it was a very weird verdict
which was i mean disappointing it was which was i mean disappointing it was
quite disappointing actually quite disappointing actually
the way ysco is set up is that it lets the way ysco is set up is that it lets
you often you can fail a single contest you often you can fail a single contest
and you'll still be considered and you'll still be considered
because um they're just lenient like because um they're just lenient like
that as long as you do well in the other that as long as you do well in the other
ones ones
so that was kind of my um that was kind so that was kind of my um that was kind
of my of my
mulligan my do-over so i could mulligan my do-over so i could
fail that one and then failing that fail that one and then failing that
meant that i had to do better in the meant that i had to do better in the
other ones so that was my goal i had to other ones so that was my goal i had to
crush contest three crush contest three
so i practiced even harder so i practiced even harder
just basically doing as much as i can to just basically doing as much as i can to
do as well as i can in problem three or do as well as i can in problem three or
contest three contest three
basically the same regimen again the basically the same regimen again the
2400 problems 2400 problems
by that point i had done most of or as by that point i had done most of or as
much of platinum and old gold as i could much of platinum and old gold as i could
so i just stuck with the code forces so i just stuck with the code forces
and contest three rolled around and it and contest three rolled around and it
didn't go so well didn't go so well
and once again i didn't even solve like and once again i didn't even solve like
half of a problem which was half of a problem which was
sad a lot of it was because i was sad a lot of it was because i was
feeling too pressured probably and that feeling too pressured probably and that
if i'd if i'd
just calmed down a bit i could have gone just calmed down a bit i could have gone
with a better strategy and with a better strategy and
probably just done better in general but probably just done better in general but
yeah that's kind of important to yeah that's kind of important to
just try and not take contest too just try and not take contest too
seriously because if you will it seriously because if you will it
because if you do it clouds your because if you do it clouds your
judgment it kind of screws with you if judgment it kind of screws with you if
you find a good balance between you find a good balance between
not caring about the result and at the not caring about the result and at the
same time caring enough to not like give same time caring enough to not like give
up midway up midway
then that's perfect you want to keep then that's perfect you want to keep
trying and not freak out about it trying and not freak out about it
that's all you gotta do in contest just that's all you gotta do in contest just
push through and do what you can push through and do what you can
but i didn't and i failed the third but i didn't and i failed the third
contest too contest too
that was kind of it in terms of camp i that was kind of it in terms of camp i
after that i just accepted that it after that i just accepted that it
wouldn't happen because i'd done too wouldn't happen because i'd done too
badly badly
in those two in those two
although shifting away from musco for a although shifting away from musco for a
second during that same period before second during that same period before
even the first usco contest even the first usco contest
i actually ended up making master on i actually ended up making master on
kobe forces which is a kobe forces which is a
pretty distinctive rank i think it used pretty distinctive rank i think it used
to mean more in the past than it does to mean more in the past than it does
now because there are more people now because there are more people
but i mean master is still pretty good but i mean master is still pretty good
even now even now
so that was where i first started so that was where i first started
feeling the success i felt the feeling the success i felt the
urge to do to win urge to do to win
i don't know win something because that i don't know win something because that
was a good success on code forces to was a good success on code forces to
have have
and um so meanwhile at the same time and um so meanwhile at the same time
while i was doing yusuke i was also while i was doing yusuke i was also
doing doing
contests on code forces contests on code forces
bouncing between master and candidate bouncing between master and candidate
master eventually i ended up getting master eventually i ended up getting
12th in the contest which was insane 12th in the contest which was insane
because it brought me up to because it brought me up to
like 2250 almost international master like 2250 almost international master
just from a single div 2 which just from a single div 2 which
sort of shows the effects of inflation sort of shows the effects of inflation
but i mean whatever i was happy with it but i mean whatever i was happy with it
plus 150 you kidding me i'll take that plus 150 you kidding me i'll take that
so so
that was a good thing and then after that was a good thing and then after
that that
well as you'd see in my rating graph well as you'd see in my rating graph
there was this massive drop where i um there was this massive drop where i um
in one global round i solved three in one global round i solved three
problems and problems and
ended up losing 166 rating in a single ended up losing 166 rating in a single
contest contest
and that was devastating honestly and that was devastating honestly
because i was because i was
you know so close to international you know so close to international
master which was master which was
my next goal by then having given up on my next goal by then having given up on
usago and then i just totally got usago and then i just totally got
demolished by that demolished by that
and uh that contest it hit me harder and uh that contest it hit me harder
than i'd like to admit than i'd like to admit
so i'm just gonna not admit it and so i'm just gonna not admit it and
instead i'm gonna say that it inspired instead i'm gonna say that it inspired
me to do more contests on different me to do more contests on different
websites websites
because after that i decided to get back because after that i decided to get back
into code chef into code chef
and i did one day two on code chef and and i did one day two on code chef and
ended up winning it which was crazy ended up winning it which was crazy
but from that that kind of helped from but from that that kind of helped from
that i that i
decided doing decide to do a contest decided doing decide to do a contest
both simultaneously on code forces and both simultaneously on code forces and
code chef code chef
obviously not the same time but like obviously not the same time but like
just doing both of them just doing both of them
um around then before the usco contest um around then before the usco contest
happened happened
i did kind of well i solved another i did kind of well i solved another
problem and a half but problem and a half but
not enough to be significant enough so not enough to be significant enough so
yeah as i predicted eventually yeah as i predicted eventually
camp was a failure which was sad camp was a failure which was sad
but now i had a newfound goal to succeed but now i had a newfound goal to succeed
on the other sites namely kobe forces on the other sites namely kobe forces
and kochef and kochef
and specifically it was code chef and specifically it was code chef
actually because that one was novel and actually because that one was novel and
interesting to me interesting to me
so during that time i practiced a lot on so during that time i practiced a lot on
code for code chef code for code chef
and the way to do that is because they and the way to do that is because they
don't have difficulty levels don't have difficulty levels
well they don't have difficulty numbers well they don't have difficulty numbers
that correspond to rating that correspond to rating
they instead have difficulties like easy they instead have difficulties like easy
easy medium medium medium hard easy medium medium medium hard
hard and uh you know simple cakewalk hard and uh you know simple cakewalk
whatever they are whatever they are
and super hard i think and super hard i think
and maybe impossible but i don't and maybe impossible but i don't
remember what they're called remember what they're called
but anyway they have difficulties like but anyway they have difficulties like
those and so i think the best way to those and so i think the best way to
find some sort of practice regimen for find some sort of practice regimen for
coach chef is to first coach chef is to first
find the level of difficulty that like find the level of difficulty that like
is hard for you is hard for you
and you can do that because the problems and you can do that because the problems
in each difficulty group say medium are in each difficulty group say medium are
order by order by
solves so you can pick some problem and solves so you can pick some problem and
then then
give it maybe uh 30 minutes an hour so give it maybe uh 30 minutes an hour so
however long you'd normally spend a try however long you'd normally spend a try
problem if you can't get it maybe move problem if you can't get it maybe move
to some easier ones and just find the to some easier ones and just find the
difficulty that works for you difficulty that works for you
kind of like a binary search if you know kind of like a binary search if you know
what that is what that is
like you pick one problem if it's too like you pick one problem if it's too
easy you move on to harder ones if it's easy you move on to harder ones if it's
too hard you move on to easier ones too hard you move on to easier ones
and if it's just right then it's just and if it's just right then it's just
right perfect right perfect
but that was what i did i just found but that was what i did i just found
some difficulty and started like some difficulty and started like
grinding out a bunch of them at once grinding out a bunch of them at once
uh for me it was medium and i just uh for me it was medium and i just
did a bunch of them and those helped did a bunch of them and those helped
with sort of conceptual things and with sort of conceptual things and
strengthening my ability to think around strengthening my ability to think around
data structures as many of the code data structures as many of the code
check problems check problems
used to be like that more data structure used to be like that more data structure
oriented and less sort of ad hoc oriented and less sort of ad hoc
or thinking oriented or thinking oriented
then beyond that then beyond that
um around the point where i hit um around the point where i hit
or i finally got international master on or i finally got international master on
code forces code forces
like i realized that the code chef kind like i realized that the code chef kind
of just wasn't helping me anymore of just wasn't helping me anymore
and at a certain point it stops being and at a certain point it stops being
about your ability to about your ability to
use concepts and things like that it's use concepts and things like that it's
more about just your thinking ability more about just your thinking ability
because the harder problems like for because the harder problems like for
example div 1d and maybe sometimes d1c example div 1d and maybe sometimes d1c
they are quite hard they often require they are quite hard they often require
not only advanced techniques but also a not only advanced techniques but also a
lot of thinking around it to be able to lot of thinking around it to be able to
reduce the problem to what you need it reduce the problem to what you need it
to be to something solvable to be to something solvable
and so the best type of practice and so the best type of practice
therefore therefore
is practicing your thinking ability and is practicing your thinking ability and
use general problem solving not certain use general problem solving not certain
topics topics
so what i was trying to do is because so what i was trying to do is because
code forces was taking a recent ad hoc code forces was taking a recent ad hoc
trend where a lot of the problems were trend where a lot of the problems were
about thinking about thinking
i made the most out of the contests that i made the most out of the contests that
were happening so i were happening so i
tried up solving more and did as many tried up solving more and did as many
contests as i can contests as i can
even some of the div 3s and div 2s even some of the div 3s and div 2s
because they because they
you know still stimulated the brain they you know still stimulated the brain they
kind of helped out in some ways kind of helped out in some ways
it was useful and in terms of practice i it was useful and in terms of practice i
at that point i would recommend sites at that point i would recommend sites
like at coder which like at coder which
is very heavy on the thinking oriented is very heavy on the thinking oriented
problems in ad hoc problems in ad hoc
or also ioi style problems because those or also ioi style problems because those
are are
generally good for generally good for
um thinking because they have a lot of um thinking because they have a lot of
subtasks subtasks
they actually help you through the they actually help you through the
thinking process with subtasks about the thinking process with subtasks about the
problem problem
and it's just generally kind of a good and it's just generally kind of a good
experience to try those out experience to try those out
because they're usually good they're because they're usually good they're
usually about thinking and they're usually about thinking and they're
usually going to be helpful usually going to be helpful
and of course you can also try the types and of course you can also try the types
of problems and co-forces that you're of problems and co-forces that you're
trying to solve trying to solve
however the problem with code forces is however the problem with code forces is
that there are a ton of old problems that there are a ton of old problems
from many years ago from many years ago
and many of them don't have much of the and many of them don't have much of the
thinking they have thinking they have
a lot of like advanced data structures a lot of like advanced data structures
applications of those and stuff like applications of those and stuff like
that that
it's less useful than it would seem so it's less useful than it would seem so
you would either want to do recent code you would either want to do recent code
forces or some of the other sites i forces or some of the other sites i
mentioned at coder or ioi style problems mentioned at coder or ioi style problems
so a few more contests happened and so a few more contests happened and
actually two more actually two more
and finally and finally
finally it finally happened after finally it finally happened after
it was over one and a half years by that it was over one and a half years by that
points and started competitive points and started competitive
programming programming
which is relatively short for some but i which is relatively short for some but i
mean still mean still
it's a good amount of time to invest in it's a good amount of time to invest in
something something
i finally hit red gram master i finally hit red gram master
the famous color of like all sites the famous color of like all sites
i don't know specifically at 20 i don't know specifically at 20
24 24 rating which is a nice number 24 24 rating which is a nice number
and i think honestly the most and i think honestly the most
significant change i did significant change i did
which and after hitting red i ended up which and after hitting red i ended up
not losing rating many times in many not losing rating many times in many
different contests in a row i think the different contests in a row i think the
most significant change i did was most significant change i did was
honestly like fixing my sleep schedule honestly like fixing my sleep schedule
so that even with the early contests i so that even with the early contests i
wasn't waking up early and kind of wasn't waking up early and kind of
throwing myself off before the contest throwing myself off before the contest
even started because sleep is honestly even started because sleep is honestly
so important it's incredible how much of so important it's incredible how much of
a difference you can make a difference you can make
if you feel awake if you feel energized if you feel awake if you feel energized
you're going to be really good in the you're going to be really good in the
contest much better than you would if contest much better than you would if
you're tired and you can barely focus on you're tired and you can barely focus on
a single thought a single thought
obviously so honestly obviously so honestly
it's the best advice i can get fix your it's the best advice i can get fix your
sleep schedules honestly sleep schedules honestly
if you haven't already and if you have if you haven't already and if you have
good job good job
you are you are set to be better you are you are set to be better
so around the same time after hitting so around the same time after hitting
red and i started youtube red and i started youtube
as you are watching right now it was as you are watching right now it was
just general chill screencasts i'm kind just general chill screencasts i'm kind
of still doing those at the same time of still doing those at the same time
and i think that helped too because that and i think that helped too because that
kept me focused on what i was trying to kept me focused on what i was trying to
do do
it kept me focused in the unofficial it kept me focused in the unofficial
rounds like the div twos that i did rounds like the div twos that i did
and at the same time it helped me to and at the same time it helped me to
make the most out of what i was doing make the most out of what i was doing
to be able to practice more and improve to be able to practice more and improve
more more
so i wouldn't say that everyone should so i wouldn't say that everyone should
start youtube it's kind of a lot start youtube it's kind of a lot
it's kind of work to do but just it's kind of work to do but just
something like that something like that
it's something to consider i think it it's something to consider i think it
does help to be honest does help to be honest
and most of the training i was doing at and most of the training i was doing at
this point was training my ad hoc powers this point was training my ad hoc powers
my ability to think doing as many my ability to think doing as many
contests as i could because contests as i could because
most of the contests ended up being most of the contests ended up being
helpful on code forces code chef at helpful on code forces code chef at
coder coder
um also some google stuff like kickstart um also some google stuff like kickstart
and code jam and code jam
gogem was before and gogem was before and
speaking of code chef i ended up hitting speaking of code chef i ended up hitting
seven stars actually before i got red seven stars actually before i got red
but it was fun it was cool but it was fun it was cool
it was very unexpected i got two rank 11 it was very unexpected i got two rank 11
performances in a row performances in a row
just totally out of nowhere and just just totally out of nowhere and just
took it from there and ended up being took it from there and ended up being
red red
but yeah but yeah
at a certain point it stops being more at a certain point it stops being more
important about what you practice and important about what you practice and
kind of just kind of just
that whatever you do is helping you that whatever you do is helping you
think think
it's not just brainlessly applying some it's not just brainlessly applying some
random data structures because random data structures because
thinking is what's necessary at this at thinking is what's necessary at this at
high stages high stages
thinking and the general mastery of the thinking and the general mastery of the
basic concepts basic concepts
if you have both of those you'll be if you have both of those you'll be
pretty pretty
pretty well off in terms of contests pretty well off in terms of contests
and after that i continued doing the and after that i continued doing the
youtube game youtube game
there was a lot less practice that there was a lot less practice that
happened because the contests were happened because the contests were
well there are many of them like well there are many of them like
multiple a week multiple a week
and that was enough for me and that was enough for me
and it ended up working i didn't haven't and it ended up working i didn't haven't
lost a rating in red yet lost a rating in red yet
and i hit international grand master and and i hit international grand master and
that's where we are now that's where we are now
so that is essentially my competitive so that is essentially my competitive
programming journey what i've been doing programming journey what i've been doing
and well these are not the type of and well these are not the type of
videos i usually make videos i usually make
i tend to stay more like the chill side i tend to stay more like the chill side
like screencasts like screencasts
and you know stuff like solution videos and you know stuff like solution videos
for recent contests and stuff for recent contests and stuff
and sometimes i've done a few tutorials and sometimes i've done a few tutorials
i might continue those i might continue those
but if you like these types of videos but if you like these types of videos
the types of things that tell you more the types of things that tell you more
about me about me
and how like practice tips and stuff i and how like practice tips and stuff i
guess that's more of the important thing guess that's more of the important thing
yeah um if you like these i mean i guess yeah um if you like these i mean i guess
i'll have to do more i'll have to do more
so leave feedback on what you thought so leave feedback on what you thought
about this about this
and yeah that's all i got and yeah that's all i got
goodbye goodbye