Essential Techniques for Competitive Programming: Bit Manipulation, Discretization, and DP Fundamentals
Core Problem-Solving Strategies
Bitwise Operations
Bitwise operators provide efficient alternatives to arithmetic operations:
Operator
Description
Behavior
&
AND
Result is 1 only if both bits are 1
|
OR
Result is 0 only if both bits are 0
^
XOR
Result is 1 when bits differ
~
NOT
Flips all bits
<<
Left Shift
Shifts bits ...
Posted on Wed, 20 May 2026 20:06:51 +0000 by Nuser
Minimum Spanning Tree Algorithmic Practice Problems
Problem A: Road Construction
Description
There are n initially isolated cities. In each round, every city connects to its nearest neighbor. If a cycle formss during a round, the shortest edge in that cycle is removed. Once cities are connected, they form a "union" and act as a single entity in subsequent rounds. The process continues ...
Posted on Fri, 15 May 2026 17:29:52 +0000 by peter.t
Merging Account Lists via Disjoint Set Union
Problem Definition
Given a list of accounts accounts, where each accounts[i] is a list of strings. The first string accounts[i][0] is the user's name. The remaining strings are email addresses belonging to that account.
The objective is to merge accounts that belong to the same user. Two accounts belong to the same person if they share at least ...
Posted on Mon, 11 May 2026 13:18:36 +0000 by rishiraj
Disjoint Set Union (DSU): Tree-Based Dynamic Disjoint Sets Management
Sets and Common Operations
A set is an unordered, duplicate-free collection of elements, mathematically denoted as (S = {x, y, z, \dots}). For example, two sets tracking event participants could be:
(Photography = {\text{Liam}, \text{Mia}, \text{Noah}, \text{Emma}, \text{Ethan}} | \text{Event photography team volunteers})
(Videography = {\tex ...
Posted on Sun, 10 May 2026 15:19:33 +0000 by cybersurfur
Competitive Programming Problem Solutions: Basic Algorithms and Data Structures
Problem 1: Character Output
Output each character of the string "I Love GPLT" on a separate line.
#include <iostream>
using namespace std;
int main() {
string msg = "I Love GPLT";
for (char c : msg) {
cout << c << '\n';
}
return 0;
}
Problem 2: Standard Weight Calculation
Given a ...
Posted on Sat, 09 May 2026 19:24:39 +0000 by AndyEarley