Arnab Chakraborty

Arnab Chakraborty

3,768 Articles Published

Articles by Arnab Chakraborty

Page 99 of 377

Program to find overlapping intervals and return them in ascending order in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 426 Views

Overlapping intervals occur when two intervals share common values. Given two sorted lists of non-overlapping intervals, we need to find their intersections and return them in ascending order. The key insight is to use a two-pointer approach to compare intervals from both lists and calculate their overlap using the maximum of start points and minimum of end points. Problem Statement Given two lists of intervals where each list is sorted and non-overlapping internally, find all overlapping intervals between the two lists. Example If we have inv1 = [[50, 100], [190, 270], [310, 330]] and inv2 ...

Read More

Program to find total unique duration from a list of intervals in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 1K+ Views

Suppose we have a list of intervals where each interval represents a range [start, end] (inclusive). We need to find the total unique duration covered by all intervals combined, handling any overlaps correctly. So, if the input is like intervals = [[2, 11], [13, 31], [41, 61]], then the output will be 50, as the total unique covered distance is (11 - 2 + 1) = 10 then (31 - 13 + 1) = 19 and (61 - 41 + 1) = 21, so total is 50. Algorithm To solve this, we will follow these steps − ...

Read More

Program to find intervals that do not intersect the cut interval in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 285 Views

Given a sorted list of disjoint intervals and a cut interval, we need to remove all parts that intersect with the cut interval and return the remaining portions. This is useful for scheduling, range queries, and interval manipulation problems. Problem Understanding For each interval in our list, we check if it intersects with the cut interval. If it does, we keep only the non-overlapping parts. If it doesn't intersect at all, we keep the entire interval. Interval Cutting Example Original: [2, ...

Read More

Program to find number of minimum steps to reach last index in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 600 Views

Suppose we have a list of numbers called nums and we are placed currently at nums[0]. On each step, we can either jump from the current index i to i + 1 or i - 1 or j where nums[i] == nums[j]. We have to find the minimum number of steps required to reach the final index. So, if the input is like nums = [4, 8, 8, 5, 4, 6, 5], then the output will be 3, as we can jump from index 0 to index 4 as their values are both 4. And then we jump back ...

Read More

Program to find number of friend groups in a set of friends connections in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 868 Views

Finding friend groups in a network is a classic graph connectivity problem. We need to count the number of connected components where each person is represented as a node and friendships as edges. This can be solved using Depth-First Search (DFS) to traverse connected friends. Understanding the Problem Given a friends list where friends[i] contains the indices of people that person i is friends with, we need to find how many separate friend groups exist. Two people belong to the same group if there's a path of mutual friendships connecting them. ...

Read More

Program to find maximum sum by flipping each row elements in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 334 Views

Suppose we have a 2D binary matrix. For any row or column in the given matrix we can flip all the bits. If we can perform any number of these operations, and we treat each row as a binary number, we have to find the largest sum that can be made of these numbers. So, if the input is like ? 0 ...

Read More

Campus Bikes II in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 332 Views

The Campus Bikes II problem involves assigning unique bikes to workers on a 2D grid such that the total Manhattan distance is minimized. Given N workers and M bikes (where N ≤ M), we need to find the optimal assignment. The Manhattan distance between two points p1 and p2 is calculated as: |p1.x - p2.x| + |p1.y - p2.y|. Problem Example Given workers = [[0, 0], [2, 1]] and bikes = [[1, 2], [3, 3]]: ...

Read More

Serialize and Deserialize BST in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 631 Views

Serialization converts a binary search tree into a string format that can be stored or transmitted, while deserialization reconstructs the tree from that string. This is useful for saving tree data to files or sending it over networks. Problem Overview Given a binary search tree, we need to serialize it into a string and then deserialize it back to the original tree structure. The serialization uses level-order traversal with dots as separators and 'N' for null nodes. 5 2 ...

Read More

Max Increase to Keep City Skyline in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 345 Views

The Max Increase to Keep City Skyline problem asks us to find the maximum total sum that building heights can be increased while maintaining the original skyline when viewed from all four directions. The skyline from each direction is determined by the maximum height in each row (left/right view) and each column (top/bottom view). Problem Understanding Given a 2D grid where each value represents a building height, we need to ? Calculate the skyline from left/right (maximum in each row) Calculate the skyline from top/bottom (maximum in each column) For each position, the maximum possible height ...

Read More

Design Log Storage System in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 25-Mar-2026 445 Views

A log storage system manages logs with unique IDs and timestamps. Each timestamp follows the format Year:Month:Day:Hour:Minute:Second (e.g., "2019:01:01:23:59:59") with zero-padded decimal numbers. We need to implement two main functions: put(id, timestamp) − Stores a log with its unique ID and timestamp retrieve(start, end, granularity) − Returns log IDs within a time range based on specified granularity (Year, Month, Day, Hour, Minute, Second) How Granularity Works The granularity parameter determines the precision level for comparison. For example, with granularity "Day", timestamps are compared only up to the day level, ignoring hours, minutes, and seconds. ...

Read More
Showing 981–990 of 3,768 articles
« Prev 1 97 98 99 100 101 377 Next »
Advertisements