XOR Linear Basis
Core ConceptsBefore defining a linear basis, it is essential to understand the following terms regarding bitwise XOR operations on integer sets:XOR SumFor a given set of unsigned integers Z, the XOR sum is the cumulative XOR of all its elements: Z1 ⊕ Z2 ⊕ ... ⊕ Zn.SpanThe span of a set Z, denoted as span(Z), represents the set ...
Posted on Sat, 30 May 2026 00:04:52 +0000 by NeoPuma
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
Introduction to Digit Dynamic Programming
When solving counting problems over large numerical ranges, traditional anumeration becomes inefficient due to redundant computations. Consider counting processes from 7000 to 7999, 8000 to 8999, and 9000 to 9999. These intervals share a common pattern: the lower three digits cycle from 000 to 999, with only the thousand's digit varying. This o ...
Posted on Wed, 20 May 2026 18:55:12 +0000 by cbrooks
Bit Counting Using Divide and Conquer with 3-Bit Grouping
The following code deomnstrates a divide and conquer approach for bit counting using 3-bit grouping. This method efficiently computes the number of set bits in an integer by breaking the problem into smaller subproblems, solving them individually, and then combinnig the results.
public static int bitsCount(int x) {
int n;
n = (x >> ...
Posted on Fri, 15 May 2026 14:53:35 +0000 by monloi
The Inclusion-Exclusion Principle: Applications in Competitive Programming
The Inclusion-Exclusion Principle
The Inclusion-Exclusion Principle is a fundamental concept in combinatorics that provides a method for calculating the size of the union of multiple sets. It addresses the problem of avoiding overcounting elements that belong to multiple sets by systematically accounting for intersections.
Codeforces 547C: Mi ...
Posted on Tue, 12 May 2026 15:12:06 +0000 by aouriques
Finding Two Non-Repeating Elements in an Array Using C
Given an array where every element appears twice except two elements that appear only once, find those two unique numbers.
Approach 1: Frequency Counting with Index Mapping
This method uses a temporary array to count occurrences by treating the original values as indices in the counting array.
#include <stdio.h>
int main() {
int arr[ ...
Posted on Sat, 09 May 2026 03:54:13 +0000 by vladibo
Algorithmic Solutions for Codeforces Round 882 Division 2
Problem A: The Man who became a God
To solve this problem, consider the absolute differences between adjacent elements in the sequence. Let the sequence be (a_1, a_2, \dots, a_n). The total cost is initially the sum of (|a_i - a_{i+1}|) for all (1 \le i < n). The operation allows removing (k-1) of these differences to minimize the remaining ...
Posted on Thu, 07 May 2026 21:33:07 +0000 by Fearsoldier