Developers

[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.

Dixitha Gulecha

Share
Published by
Dixitha Gulecha

Recent Posts

The complete guide to hiring a Full-Stack Developer using HackerEarth Assessments

Fullstack development roles became prominent around the early to mid-2010s. This emergence was largely driven…

4 weeks ago

Best Interview Questions For Assessing Tech Culture Fit in 2024

Finding the right talent goes beyond technical skills and experience. Culture fit plays a crucial…

1 month ago

Best Hiring Platforms in 2024: Guide for All Recruiters

Looking to onboard a recruiting platform for your hiring needs/ This in-depth guide will teach…

1 month ago

Best Assessment Software in 2024 for Tech Recruiting

Assessment software has come a long way from its humble beginnings. In education, these tools…

1 month ago

Top Video Interview Softwares for Tech and Non-Tech Recruiting in 2024: A Comprehensive Review

With a globalized workforce and the rise of remote work models, video interviews enable efficient…

1 month ago

8 Top Tech Skills to Hire For in 2024

Hiring is hard — no doubt. Identifying the top technical skills that you should hire…

3 months ago