As a beginner seeing this I feel like a 5 year old kid watching someone solve calculus having no idea what is going on but the clicking sound is pleasing. Lol!!!
It's cool as the months go on I use to watch some of your vids and I didn't know a single thing now I pick up on obvious variables and loops and how stuff is happening I still overall have no idea what's happening but over the past 4 months of teaching myself coding it's cool to see me understand these videos better with time, hopefully soon enough I will be able to understand it all but amazing work and congrats on first!
the code is by-product of your thoughts and solution, 4 months is a lot of time to learn coding, if you are 16+ and took 4 months to learn coding for the first time you are not giving you're all effort. solving and describe your self in code, this will take lot of practice. just learning coding alone is just 3 weeks is a max time.
@@mrkatking1 He's making a distinction between coding and problem solving. When we program, we solve problems, and then we code the solution we found. Problem solving is a continuous learning, that's for sure. So is coding, but it's much more trivial.
Congrats on solving it and getting first place! I like that you have a library of code available to speed things up (although your typing is speed is crazy fast already!).
Coordinate compression ... lol ... what an idea! Much easier than calculating the cuboid intersections and keeping track of which ones to add and which to subtract (i mean the coordinate compression does this kinda automatically)
Hey, I have a couple of questions, if you don't mind. First: why the use of min/max in part 1?, I thought the text said to ignore anything outside of the +-50 region. Second, would your part 2 solution still work if some cubes have adjacent sides? I got fed up debugging my crappy cuboid-splicing implementation, and I found your video, and I subscribed milliseconds after. I'm too old and tired to even try the competitive stuff, so I guess I'll experience it second-hand.
Even though I've been using C for over a year, and I have a decent level understanding of C++, my mind still can't keep up. I believe that is partially due to your intentional (and required for anyone to be competitive) use of pre-existing code for each problem, but mostly it's due to how insanely fast you type :D
2:08 Could some one explain the definition of "A" in line 45. I understand "A" is a pointer to the middle location of array "_A"(ie. location _A + 50 * 50 * 50). But what is the type it is cast to . ie. why is it cast to "(bool (*) [2 * N + 1][2 * N +1])"?
he just wanted to do: A[-50][-50][-50]. This is negative array indexing. Note that the coordinates are given from -50 to 50. The trick is to use the fact that C store arrays in contiguous spaces so it's possible to do A[-1] which will points to one address before the first element. It's easier to understand for 1d since no 2d recasting shenanigans are needed. In a 1D case, if you want to use an array for -50 to 50: bool original_addressed[101]; bool* negative_addressed = (bool*) &original_addressed[50]; In this example, negative_addressed[0] is like calling original_addressed[50], which is ok. If you do negative_addressed[-50], this will fetch 50 adresses before the head of the pointer which happens to be at: original_addressed[50-50] = original_addressed[0] It's just like considering the array to start at the middle and values are spread left and right. If you don't do so, you need to always add 50 so that -50 becomes 0 and 0 becomes 50 etc. Which might makes logic a bit more fuzzier. For 3D-case, you just need to figure out the starting address. Hope that helped.
That is one ugly typecast! This is why people don't like C--. Seems like he typed a lot of characters to avoid having to type "+N" 3 times in 3 array index brackets.
this may be a little stupid but it really never occurred to me that i could just manually strip the input text.... i've been doing all sorts of stripping and storing in vecs etc lmao
@@mskyba I've been typing a lot myself and watched a lot competitors and i've never seen anyone type mixes of letter and symbols as fast and smoothly as him, the standard keyboards are just not meant for that and trying to type stuff like [0=0] by touch typing is just awkward since it's all done with the pinky which is why i'm wondering if he uses a custom keyboard like a kinesis advantage or whatever
@@user-gp7bw1fn9e I can't comment on touch typing because I don't use it, I would move my fingers up and type [0=0] with my index, middle, and ring finger on QWERTY - I agree, though, that it's possible he's using a custom keyboard optimized for programming syntax
ok so i'm a junior developer and this guys looks kinda younger, and... i mean, ok, i'm a junior but this guy has SOMETHING in his mind that can proccess EVERYTHING sooo FAST, soo please tell me u're not a junior or something like that, please tell me u're a architech/specialist/senior and work for big companies, dude i'm down bad after this video cuz i look at me and i'm saying "yeah ok, maybe i'm slow af and useless? but yeah, probably all my work all over the month could be less than 5 days with this guy working on it"
Competitive programming is a beast of its own. Nobody codes like this in industry, at least what I've known. This guy does 2 things : knows how to solve complex problems (like at math olympiad), and codes his solutions (loops and some basic stuff) very fast. Yes, this is impressive and takes some training, but it is more of a sport , than real coding.
Usually you have already solved it in your head and then you type it out. Or you have an idea and start typing and keep developing the solution. Also if you know how to touch type the typing doesn't require thinking.
Ey man, you inspire me very much. How many years have you been coding? Give me a full year, i will challenge you to a coding challenge. Bookmark this comment. I am still a beginner, but i can improve exponentially
no me quejo del español ni nada soy de ecuador de latam , pero me gusta programar y aveces quisera aver nacido sabiendo ingles para entender mejor algunos problemas de codigo porque aveces me queda corto mi ingles pero bueno toca segurie studiando
As a beginner seeing this I feel like a 5 year old kid watching someone solve calculus having no idea what is going on but the clicking sound is pleasing. Lol!!!
yep
I have 6 years of experience but i feel no different than you 🤣
Lol same
the sound is absolutely yikes
I watch these videos for no reason other than to humble myself and excite myself for what I can continue to learn.
Watching this as someone who knows only the basics of scripting feels like pain
rel
Ik the pain but its fun
Amazing. Man, it is impressive how you can keep track of index pointer and know by heart it won't go beyond the size of the array
It's cool as the months go on I use to watch some of your vids and I didn't know a single thing now I pick up on obvious variables and loops and how stuff is happening I still overall have no idea what's happening but over the past 4 months of teaching myself coding it's cool to see me understand these videos better with time, hopefully soon enough I will be able to understand it all but amazing work and congrats on first!
How we going now champ?
the code is by-product of your thoughts and solution, 4 months is a lot of time to learn coding, if you are 16+ and took 4 months to learn coding for the first time you are not giving you're all effort.
solving and describe your self in code, this will take lot of practice. just learning coding alone is just 3 weeks is a max time.
@@pchandu1995 dawg what-- it's a continuous learning how to code--same way Technology grows.
@@mrkatking1 He's making a distinction between coding and problem solving. When we program, we solve problems, and then we code the solution we found. Problem solving is a continuous learning, that's for sure. So is coding, but it's much more trivial.
@@pchandu1995 he meant programming, not learning syntax...
Thats a new title😂😂😂
I love how accurate it is
Thank you for the frequent video uploads! It is really interesting to see your thought process.
Congrats on solving it and getting first place!
I like that you have a library of code available to speed things up (although your typing is speed is crazy fast already!).
I tied my shoe today. I felt proud.
*My level of coding :*
int isMajor = true;
*His level of coding:*
vector grid(N, vector(N, vector(N, false)));
lmao
Nan
Coordinate compression ... lol ... what an idea! Much easier than calculating the cuboid intersections and keeping track of which ones to add and which to subtract (i mean the coordinate compression does this kinda automatically)
This is what world class programming looks like
as someone who has hacked SEVERAL computers on Fallout i can confirm that this is 100 percent accurate
you're also destroying my hope of dreaming to be a programmer
This is competetive programming, people usually dont code this fast.
No one code that fast in the industry. It's pointless.
Guys like this are top 1%. Most people seat all day and write simple CRUDs all day.
was just thinking of the time the journalists told the coal miners to just "learn to code" LOL
He doesn’t need autocomplete. The autocomplete needs him.
I wouldn't even comprehend the whole thing in 11 minutes lol
6:29 jesus...this is some pure editing skills !
Hey, I have a couple of questions, if you don't mind.
First: why the use of min/max in part 1?, I thought the text said to ignore anything outside of the +-50 region.
Second, would your part 2 solution still work if some cubes have adjacent sides?
I got fed up debugging my crappy cuboid-splicing implementation, and I found your video, and I subscribed milliseconds after. I'm too old and tired to even try the competitive stuff, so I guess I'll experience it second-hand.
For part 1 I was concerned that something outside +/- 50 could end up inside, but looks like that didn't happen. For part 2, should still work.
@@NealWuProgramming thanks!
im not a newbie and generally get all the things hes doing
his speed is super impressive
Your WPM are out of this world
Even though I've been using C for over a year, and I have a decent level understanding of C++, my mind still can't keep up. I believe that is partially due to your intentional (and required for anyone to be competitive) use of pre-existing code for each problem, but mostly it's due to how insanely fast you type :D
I was speechless when saw this. Wish you all the best!
1:42 I too have that exact facial expression when programming
I love watching you code in real time. So amazing. The typing is unhuman!
before: trying facebook hackathon
nowdays: DESTROYING EVERYONE ELSE WITH MY CODE
thats ma boi
Are these the codes of the missile written to stop an asteroid that is about to hit the world?
Excuse me , can you show me your config of sublime in auto-complete c++ package ?
That auto complete is done by lsp + clangd
@@Nocturnal_darkness Thank you!!
dude never stop with tehse video names i love it
Insane, just watched from start to end, as a non-programmer. Amazing, keep it up, learning everyday
What is your keyboard?
2:08 Could some one explain the definition of "A" in line 45. I understand "A" is a pointer to the middle location of array "_A"(ie. location _A + 50 * 50 * 50). But what is the type it is cast to . ie. why is it cast to "(bool (*) [2 * N + 1][2 * N +1])"?
On/off 1/0 treated as boolean as easier to check for truth than integer equality check
I know the answer to this
he just wanted to do: A[-50][-50][-50]. This is negative array indexing. Note that the coordinates are given from -50 to 50. The trick is to use the fact that C store arrays in contiguous spaces so it's possible to do A[-1] which will points to one address before the first element.
It's easier to understand for 1d since no 2d recasting shenanigans are needed. In a 1D case, if you want to use an array for -50 to 50:
bool original_addressed[101];
bool* negative_addressed = (bool*) &original_addressed[50];
In this example, negative_addressed[0] is like calling original_addressed[50], which is ok.
If you do negative_addressed[-50], this will fetch 50 adresses before the head of the pointer which happens to be at: original_addressed[50-50] = original_addressed[0]
It's just like considering the array to start at the middle and values are spread left and right. If you don't do so, you need to always add 50 so that -50 becomes 0 and 0 becomes 50 etc. Which might makes logic a bit more fuzzier.
For 3D-case, you just need to figure out the starting address.
Hope that helped.
That is one ugly typecast! This is why people don't like C--. Seems like he typed a lot of characters to avoid having to type "+N" 3 times in 3 array index brackets.
When you sleep do you see the matrix
Not bad, but can u center a div?
oh wow, let's see how he destroys the keyboard.
Unbelievable speed :V
This is how movies show programmers and hackers
The title really summarize the whole video
What keyboard is this man using?
I always look forward to the day when you press the wrong button and hit the keyboard
Which is your keyboard?
this may be a little stupid but it really never occurred to me that i could just manually strip the input text.... i've been doing all sorts of stripping and storing in vecs etc lmao
3 arrays of size 100 inited to 0. Set to 1 all ranges between - 50 and 50. Sum the arrays. No?
Just curious, how fast do you type? It looks like it’s around 200+ WPM (if you weren’t typing a ton of punctuation), but I’m probably way off.
Hey Neal, love your content, would you mind sharing the ubuntu version you're using :)
How did you set up Sublime Text for compiling the C++ code for competitive programming?
except programming, what have you learned to solve problems that fast ?
Math. These problems are essentially math questions that can be solved efficiently through the use of code.
what application are you using?
Thanks TH-cam for giving me emotional damage
😂😂😂
you are the one who inspires me the most😀
Love your chanel, can you please share your color settings??
Congratulations on destroying everyone :>
Why is this solution so slow in python? Like couple of minutes.
hey when is the next advent of code ?
What is this programming language and can someone explain what’s goin on
How long have you been ion his?
Welcome to another episode of conceived in a library basement
how small chance is to start learning with u ?
there is a video/website where he explain how to setup sublime like him?
Oh my god...
I'll watch it later tho; I solved it already but I'm still thinking about how I can improve it
Can we get a camera on your keyboard?
6:00 how can he do this? How can i find this combinations?
Kanka sublime'da bilmiyorum ama vscode'da alt+left click ile yapabiliyorsun. Sublime multiple cursor diye aratabilirsin.
what book you recomnanded?
Can anyone explain the last part sum+= X[x+1] - X[x] * -.... ?????
The confidence title has ……uffff 🔥
can you make programming tutorial for beginner lol, it would be awesome
Why it feels like 2x even if it is playing in 1x😬
and did it pay your bills?
and people say you need to vim to be fast...
hi i'm a computer noob but do you know how he types symbols so fast?
@@user-gp7bw1fn9e He has spent a lot of time typing?
@@mskyba I've been typing a lot myself and watched a lot competitors and i've never seen anyone type mixes of letter and symbols as fast and smoothly as him, the standard keyboards are just not meant for that and trying to type stuff like [0=0] by touch typing is just awkward since it's all done with the pinky which is why i'm wondering if he uses a custom keyboard like a kinesis advantage or whatever
@@user-gp7bw1fn9e I can't comment on touch typing because I don't use it, I would move my fingers up and type [0=0] with my index, middle, and ring finger on QWERTY - I agree, though, that it's possible he's using a custom keyboard optimized for programming syntax
I don't understand anything but his typing skill is so satisfying.
I don't know how he types stuff like [x][y][z] so fast, my right pinky always misses the correct bracket key
my dude reads that shit for 5 secs "yeah, that's make sense"
I am impressed of the speed.
I wonder what keyboard he uses, anyone knows?
ok so i'm a junior developer and this guys looks kinda younger, and... i mean, ok, i'm a junior but this guy has SOMETHING in his mind that can proccess EVERYTHING sooo FAST, soo please tell me u're not a junior or something like that, please tell me u're a architech/specialist/senior and work for big companies, dude i'm down bad after this video cuz i look at me and i'm saying "yeah ok, maybe i'm slow af and useless? but yeah, probably all my work all over the month could be less than 5 days with this guy working on it"
Competitive programming is a beast of its own. Nobody codes like this in industry, at least what I've known. This guy does 2 things : knows how to solve complex problems (like at math olympiad), and codes his solutions (loops and some basic stuff) very fast. Yes, this is impressive and takes some training, but it is more of a sport , than real coding.
Imagine what will happen if he learns vim (namely vim motions)
Waa is this your browser ? wow looks like vim
please could you explain why adjacent sides of cubes with the state ON are not counted twice?
They are counted twice he just subtracts an iteration
which programming language is he using by the way?
C++
Congrats. Love that title 😁
New title , keep them coming. 😂
incredibly based
can you please do my howmework?
How can you solve a puzzle that fast while thinking and typing
Usually you have already solved it in your head and then you type it out. Or you have an idea and start typing and keep developing the solution. Also if you know how to touch type the typing doesn't require thinking.
"ok that makes sense".....
what type of PC do you use?
Brain.
astounding!!!!
hope someone notice this comment:
i’m new to linux, can you tell me what distro he is using here?
I want to say it’s Ubuntu
@@freethinkermentality8175
thank you, sir
Bro , are you coding bro ? Or playing games ? Super fast 💯🙉
Great job!
my code more than 5 lines: Segmentation fault, Core dumped!
I fell like I'm jusst a kid when I watching u
this guy makes me anxious
Ey man, you inspire me very much. How many years have you been coding? Give me a full year, i will challenge you to a coding challenge. Bookmark this comment. I am still a beginner, but i can improve exponentially
Update?
@@mr.jacobgalesburg1465 I won a java coding challenge in my school🤙, but there is still more room to improve, I still don't think I'm on your level
BRO how to become like you, what to learn and how to learn please help us
dude, you're genuis af.
I wish I was smart enough. Would seem very fun to do.
Love that title.
are u good at math ? just curious
LOL probably
He's a monster.
How he move cursor fastly ?
I wanna know that too 🤔
using only keyboard
What a beast👍👍
no me quejo del español ni nada soy de ecuador de latam , pero me gusta programar y aveces quisera aver nacido sabiendo ingles para entender mejor algunos problemas de codigo porque aveces me queda corto mi ingles pero bueno toca segurie studiando