Hire top tech talent with our recruitment platform
Access Free Demo[Meetup] Square Root Decomposition Algorithm With Anudeep Nekkanti
If you were given a chance to add a new denomination(one that’s not in use today, but was perhaps used in past) to Indian currency, what would it be? And why?
Well, that’s the question that got everyone thinking , at the HackerEarth meetup on competitive programming with Anudeep Nekkanti.
We had invited Anudeep Nekkanti, an amazing competitive programmer from India, to a competitive programming meetup at HackerEarth. Anudeep was selected for the 2014 ACM ICPC World Finals in Ekaterinburg. Having bested a whopping 25000 teams at the National-level and State-level of Infosys Aspirations 2020 programming contests held in 2012. Anudeep could well be among the most talented programmers today.
He was happy enough to give us some insights into the world of competitive programming and what it takes to make it to the top. He talked about his experience at the prestigious programming competition in Russia. And he definitely made the meetup a gem of a session by speaking about SQRT decomposition in some detail and how it could be used to tackle problems at various levels.
What in god’s name is SQRT decomposition? ?
We all know how powerful the base 2 numbers are; they form the numeric system and that’s how we represent the numbers in computer systems too. See how versatile these numbers are, that we can form any decimal by using each of these powers just once.
The concept of doubling gives rise to log factor, multiples of 2’s, and to know that they are used in various concepts of programming like segment trees, binary search, square root decomposition etc and still we do not really realise it. Square root decomposition is not as obvious as it should be.
Here are some excerpts from the meetup –
Talking about how to reach the top, Anudeep tells us, intelligence or ability to learn quickly, hard work and being persistence are the important skills to have. Well, of course, luck is one of them. It is all about striking the right balance. Competitive Programming is about learning new things and not giving up in frustrating times and staying in that uncomfortable zone. Well, what’s the point of walking every day when you are practicing running, right? That’s just how it is with competitive programming too. You need to try for the next level. If u have solved X number of problems, make sure to solve X + 1 as well.
In Competitive Programming, it’s better to break the problem into smaller problems, solve them in order, and think about the efficiency. This helps in better planning.It’s crucial to know when to go for help. Did you know that you can relate the Algorithm’s logic to real-world scenarios? see if you can get an analogy of that in the real world.
Without knowing it, people use most of the sorting techniques in their everyday lives, without realising, for example, to find a word in the dictionary, almost everyone will go for a binary search as the dictionary is already sorted.Even the shopkeeper arranges his daily earnings by segregating the notes into heaps of 10s, 50s, 100s, 500s and so on, and then merges them, and they are sorted. That’s nothing but bucket sort. The clock too works on Modulo operations.
To solve a problem, it is important to understand the proof of the algorithm and the math behind it. There is math in everything and it’s crucial to know it, not that you need to be an expert in it. What is also imperative is that you understand the logic of algorithms.
Anudeep explained square root decomposition in detail. Check out this video where ace programmer Anudeep tells you all you need to know about square root decomposition.
Get advanced recruiting insights delivered every month
Related reads
Top 8 Sourcing Tools for Recruiters: A Comprehensive Guide
In today’s competitive talent landscape, attracting top candidates requires going beyond traditional job board postings. This is where effective sourcing tools comes into…
Benefits of Technical Interview Outsourcing for Growing Companies
With growth, recruiting the best technical talents becomes one of the most important, but also the hardest, processes. Screening technical candidates requires time,…
Enterprise Recruitment – Process & Challenges
In recent years, recruitment practices have changed tremendously. As the times advanced, organisations took numerous steps towards adopting technology-based recruitment, addressing the various…
Leveraging Recruitment Metrics to Improve Hiring Decisions
Today’s job market is very competitive. Organizations must adopt data-driven approaches to amplify their recruitment efforts to stay afloat in the face of…
The Impact of Talent Assessments on Reducing Employee Turnover
Organizations of all industries struggle with employee turnover. The high turnover rates cause increased hiring costs, lost productivity, and broken team dynamics. That’s…
Pre-Employment Assessment Testing – The Complete Guide
Candidate assessment is a major part of the hiring process. The talent acquisition system emphasizes conducting pre-employment assessment testing to derive quality results….