THE EASY PROBLEMS
I/O + Sequences Only
- Entry Level: Kattis - hello ✅
- UVa 10071 - Back to High School ✅
- UVa 11614 - Etruscan Warriors ✅
- Kattis - r2 ✅
Repetition Only
- Entry Level: Kattis - timeloop ✅
- UVa 01124 - Celebrity Jeopardy ✅
- UVa 11044 - Searching for Nessy
- Kattis - different
Selection Only
- Entry Level: Kattis - moscowdream
- Kattis - isithalloween
- Kattis - onechicken
- Kattis - quadrant
Multiple Test Cases + Selection
- Entry Level: Kattis - oddities
- UVa 11172 - Relational Operators
- UVa 12372 - Packing for Holiday
- Kattis - helpaphd
Control Flow
- Entry Level: Kattis - statistics
- UVa 11764 - Jumping Mario
- UVa 12279 - Emoogle Balance
- Kattis - oddgnome
Function
- Entry Level: Kattis - mia
- UVa 10424 - Love Calculator
- UVa 11332 - Summing Digits
- Kattis - filip
1D Array Manipulation, Easier
- Entry Level: Kattis - lostlineup
- UVa 11679 - Sub-prime
- UVa 12015 - Google is Feeling Lucky
- Kattis - acm
Easy
- Entry Level: Kattis - hissingmicrophone
- UVa 12658 - Character Recognition
- UVa 12696 - Cabin Baggage
- Kattis - pokerhand
Still Easy
- Entry Level: Kattis - bubbletea
- UVa 11559 - Event Planning
- UVa 11683 - Laser Sculpture
- Kattis - bossbattle
Medium
- Entry Level: Kattis - basicprogramming1
- UVa 12157 - Tariff Plan
- UVa 12643 - Tennis Rounds
- Kattis - battlesimulation
THE AD HOC PROBLEMS
Game (Card)
- Entry Level: UVa 10646 - What is the Card?
- UVa 12247 - Jollo
- Kattis - bela
- Kattis - memorymatch
Game (Chess)
- Entry Level: UVa 00278 - Chess
- UVa 00696 - How Many Knights
- Kattis - empleh
- Kattis - helpme
Game (Others), Easier
- Entry Level: UVa 10189 - Minesweeper
- UVa 00947 - Master Mind Helper
- Kattis - connectthedots
- Kattis - gamerank
Interesting Real Life Problems, Harder
- Entry Level: UVa 00706 - LC-Display
- UVa 11279 - Keyboard Comparison
- Kattis - creditcard
- Kattis - workout
Time, Easier
- Entry Level: Kattis - marswindow
- UVa 00579 - Clock Hands
- UVa 12148 - Electricity
- Kattis - friday
Time, Harder
- Entry Level: Kattis - timezones
- UVa 10942 - Can of Beans
- UVa 11947 - Cancer or Scorpio
- Kattis - birthdayboy
Roman Numerals
- Entry Level: UVa 00759 - The Return of the Roman Empire
- UVa 12397 - Roman Numerals
- Kattis - rimski
- Kattis - romanholidays
Cipher/Encode/Encrypt/Decode/Decrypt, Easier
- Entry Level: UVa 13145 - Wuymul Wixcha
- UVa 11278 - One-Handed Typist
- UVa 12896 - Mobile SMS
- Kattis - t9spelling
Cipher/Encode/Encrypt/Decode/Decrypt, Medium
- Entry Level: Kattis - secretmessage
- UVa 00245 - Uncompress
- UVa 11787 - Numeral Hieroglyphs
- Kattis - anewalphabet
Input Parsing (Iterative)
- Entry Level: UVa 11878 - Homework Checker
- UVa 00397 - Equation Elation
- UVa 01200 - A DP Problem
- Kattis - timebomb
Output Formatting, Easier
- Entry Level: UVa 00488 - Triangle Wave
- UVa 10500 - Robot maps
- UVa 12364 - In Braille
- Kattis - musicalnotation
Time Waster Problems, Easier
- Entry Level: Kattis - asciiaddition
- UVa 11638 - Temperature Monitoring
- UVa 12608 - Garbage Collection
- Kattis - pachydermpeanutpacking
Time Waster Problems, Harder
- Entry Level: UVa 10188 - Automated Judge Script
- UVa 00405 - Message Routing
- Kattis - froggie
- Kattis - windows
LINEAR DS WITH BUILT-IN LIBRARIES
1D Array Manipulation, Medium
- Entry Level: Kattis - jollyjumpers
- UVa 12150 - Pole Position
- UVa 12356 - Army Buddies
- Kattis - greedilyincreasing
1D Array Manipulation, Harder
- Entry Level: UVa 10978 - Let’s Play Magic
- UVa 11222 - Only I did it
- Kattis - mastermind
- Kattis - pivot
2D Array Manipulation, Easier
- Entry Level: Kattis - epigdanceo↵
- UVa 11581 - Grid Successors
- UVa 12667 - Last Blood
- Kattis - nineknights
2D Array Manipulation, Harder
- Entry Level: Kattis - 2048
- UVa 00466 - Mirror Mirror
- UVa 11360 - Have Fun with Matrices
- Kattis - flagquiz
Sorting, Easier
- Entry Level: Kattis - basicprogramming2
- UVa 12541 - Birthdates
- UVa 12709 - Falling Ants
- Kattis - mjehuric
Sorting, Harder
- Entry Level: Kattis - sortofsorting
- UVa 01610 - Party Games
- UVa 11321 - Sort Sort and Sort
- Kattis - dyslectionary
Special Sorting Problems
- Entry Level: UVa 11462 - Age Sort
- UVa 11495 - Bubbles and Buckets
- Kattis - bread
- Kattis - magicsequence
Bit Manipulation
- Entry Level: UVa 11933 - Splitting Numbers
- UVa 12571 - Brother & Sisters
- Kattis - deathstar
- Kattis - snapperhard
Big Integer26
- Entry Level: UVa 10925 - Krakovia
- UVa 10523 - Very Easy
- Kattis - primaryarithmetic
- Kattis - wizardofodds
Stack
- Entry Level: Kattis - evenup
- UVa 00514 - Rails
- UVa 01062 - Containers
- Kattis - restaurant
Special Stack-based Problems
- Entry Level: UVa 00551 - Nesting a Bunch of...
- UVa 00673 - Parentheses Balance
- Kattis - bungeebuilder
- Kattis - delimitersoup
List/Queue/Deque
- Entry Level: Kattis - joinstrings
- UVa 11988 - Broken Keyboard ...
- UVa 10172 - The Lonesome Cargo ...
- Kattis - teque
NON-LINEAR DS WITH BUILD-IN LIBRARIES
Hash Table (set)
- Entry Level: Kattis - cd
- UVa 10887 - Concatenation of ...
- UVa 12049 - Just Prune The List
- Kattis - greetingcard
Hash Table (map), Easier
- Entry Level: Kattis - recount
- UVa 00902 - Password Search
- UVa 11348 - Exhibition
- Kattis - competitivearcadebasketball
Hash Table (map), Harder
- Entry Level: Kattis - conversationlog
- UVa 00417 - Word Index
- UVa 10145 - Lock Manager
- Kattis - awkwardparty
Balanced BST (set)
- Entry Level: UVa 10815 - Andy’s First Dictionary
- UVa 11136 - Hoax or what
- Kattis - bst
- Kattis - compoundwords
Balanced BST (map)
- Entry Level: Kattis - doctorkattis
- UVa 10138 - CDVII
- UVa 11308 - Bankrupt Baker
- Kattis - administrativeproblems
Order Statistics Tree
- Entry Level: UVa 10909 - Lucky Number
- Kattis - babynames
- Kattis - continuousmedian
- Kattis - cookieselection
DS WITH OUR OWN LIBRARIES
Graph Data Structures Problems
- Entry Level: UVa 11991 - Easy Problem from ...
- UVa 10895 - Matrix Transpose
- Kattis - abinitio
- Kattis - traveltheskies
Union-Find Disjoint Sets
- Entry Level: Kattis - unionfind
- UVa 01197 - The Suspects
- UVa 01329 - Corporative Network
- Kattis - control
Tree-related Data Structures
- Entry Level: Kattis - fenwick
- UVa 11402 - Ahoy, Pirates
- UVa 11423 - Cache Simulator
- Kattis - supercomputer
COMPLETE SEARCH
Pre-calculate-able
- Entry Level: UVa 00750 - 8 Queens Chess ...
- UVa 10128 - Queue
- Kattis - cardtrick2
- Kattis - sgcoin
Iterative (Two Nested Loops)
- Entry Level: Kattis - pet
- UVa 00592 - Island of Logic
- UVa 01588 - Kickdown
- Kattis - blackfriday
Iterative (Three or More Nested Loops, Easier)
- Entry Level: UVa 00441 - Lotto
- UVa 12515 - Movie Police
- Kattis - cudoviste
- Kattis - npuzzle
Iterative (Three or More Nested Loops, Harder)
- Entry Level: UVa 00386 - Perfect Cubes
- UVa 11236 - Grocery Store
- Kattis - calculatingdartscores
- Kattis - tautology
Iterative (Permutation)
- Entry Level: UVa 11742 - Social Constraints
- UVa 00234 - Switching Channels
- Kattis - dancerecital
- Kattis - dreamer
Iterative (Combination)
- Entry Level: UVa 00639 - Don’t Get Rooked
- UVa 11659 - Informants
- Kattis - geppetto
- Kattis - squaredeal
Try All Possible Answer(s)
- Entry Level: Kattis - flexible
- UVa 00188 - Perfect Hash
- UVa 00725 - Division
- Kattis - islands
Mathematical Simulation (Complete Search), Easier
- Entry Level: Kattis - easiest
- UVa 00382 - Perfection
- UVa 10346 - Peter’s Smoke
- Kattis - trollhunt
Mathematical Simulation (Complete Search), Harder
- Entry Level: UVa 00616 - Coconuts, Revisited
- UVa 11254 - Consecutive Integers
- Kattis - crackingrsa
- Kattis - falling
Josephus Problem
- Entry Level: UVa 00151 - Power Crisis
- UVa 11351 - Last Man Standing
- Kattis - eenymeeny
- Kattis - toys
Recursive Backtracking (Easier)
- Entry Level: UVa 10344 - 23 Out of 5
- UVa 12840 - The Archery Puzzle
- Kattis - goodmorning
- Kattis - paintings
Recursive Backtracking (Harder)
- Entry Level: UVa 00208 - Firetruck
- UVa 00307 - Sticks
- Kattis - dobra
- Kattis - pagelayout
DIVIDE AND CONQUER
Binary Search
- Entry Level: UVa 11057 - Exact Sum
- UVa 12965 - Angry Birds
- Kattis - firefly
- Kattis - outofsorts
Bisection Method and BSTA (Easier)
- Entry Level: Kattis - carefulascent
- UVa 12190 - Electric Bill
- UVa 13142 - Destroy the Moon ...
- Kattis - monk
Ternary Search and Others
- Entry Level: UVa 00183 - Bit Maps
- UVa 10385 - Duathlon
- Kattis - a1paper
- Kattis - ceiling
GREEDY
Classical
- Entry Level: UVa 10020 - Minimal Coverage
- UVa 11264 - Coin Collector
- Kattis - classrooms
- Kattis - squarepegs
Involving Sorting (Or The Input Is Already Sorted), Easier
- Entry Level: UVa 11369 - Shopaholic
- UVa 11900 - Boiled Eggs
- Kattis - icpcteamselection
- Kattis - shopaholic
Involving Sorting (Or The Input Is Already Sorted), Harder
- Entry Level: UVa 12673 - Football
- UVa 12834 - Extreme Terror
- Kattis - birds
- Kattis - delivery
Involving Priority Queue
- Entry Level: Kattis - ballotboxes
- UVa 10954 - Add All
- UVa 13177 - Orchestral scores
- Kattis - canvas
Non Classical, Easier
- Entry Level: UVa 10656 - Maximum Sum (II)
- UVa 11520 - Fill the Square
- Kattis - ants
- Kattis - bank
Non Classical, Harder
- Entry Level: UVa 11491 - Erasing and Winning
- UVa 11583 - Alien DNA
- Kattis - dvds
- Kattis - stockbroker
DYNAMIC PROGRAMMING
Max 1D/2D Range Sum
- Entry Level: UVa 10684 - The Jackpot
- UVa 10755 - Garbage Heap
- Kattis - commercials
- Kattis - prozor
Longest Increasing Subsequence (LIS)
- Entry Level: UVa 00481 - What Goes Up?
- UVa 10534 - Wavio Sequence
- Kattis - increasingsubsequence
- Kattis - trainsorting
0-1 Knapsack (Subset-Sum)
- Entry Level: UVa 10130 - SuperSale
- UVa 11566 - Let’s Yum Cha
- Kattis - knapsack
- Kattis - orders
Coin-Change (CC)
- Entry Level: UVa 00674 - Coin Change
- UVa 11259 - Coin Changing Again
- Kattis - canonical
- Kattis - exactchange2
Traveling-Salesman-Problem (TSP)
- Entry Level: Kattis - beepers
- UVa 00216 - Getting in Line
- UVa 11795 - Mega Man’s Mission
- Kattis - bustour
GRAPH TRAVERSAL
Finding Connected Components
- Entry Level: Kattis - wheresmyinternet
- UVa 00459 - Graph Connectivity
- UVa 11906 - Knight in a War Grid
- Kattis - dominoes2
Flood Fill, Easier
- Entry Level: UVa 00572 - Oil Deposits
- UVa 11953 - Battleships
- Kattis - amoebas
- Kattis - gold
Flood Fill, Harder
- Entry Level: UVa 11094 - Continents
- UVa 01103 - Ancient Messages
- Kattis - 10kindsofpeople
- Kattis - coast
Topological Sort
- Entry Level: Kattis - builddeps
- UVa 00200 - Rare Order
- UVa 11060 - Beverages
- Kattis - brexit
Bipartite or Cycle Check
- Entry Level: Kattis - runningmom
- UVa 10004 - Bicoloring
- UVa 10505 - Montesco vs Capuleto
- Kattis - hoppers
Finding Articulation Points/Bridges
- UVa 00315 - Network
- UVa 12363 - Hedge Mazes
- Kattis - birthday
- Kattis - intercept
Finding Strongly Connected Components
- Entry Level: UVa 11838 - Come and Go
- UVa 00247 - Calling Circles
- Kattis - cantinaofbabel
- Kattis - dominos
Ad Hoc Graph Traversal
- Entry Level: UVa 12376 - As Long as I Learn, I Live
- UVa 12442 - Forwarding Emails
- Kattis - faultyrobot
- Kattis - promotions
MINIMUM SPANNING TREE (MST)
Standard
- Entry Level: Kattis - islandhopping
- UVa 11228 - Transportation ...
- UVa 11631 - Dark Roads
- Kattis - cats
Variants
- Entry Level: UVa 10048 - Audiophobia
- UVa 01265 - Tour Belt
- Kattis - millionairemadness
- Kattis - muddyhike
SINGLE-SOURCE SHORTEST PATHS (SSSP)
On Unweighted Graph: BFS, Easier
- Entry Level: UVa 00336 - A Node Too Far
- UVa 10653 - Bombs; NO they ...
- Kattis - buttonbashing
- Kattis - grid
On Unweighted Graph: BFS, Harder
- Entry Level: Kattis - lost
- UVa 11352 - Crazy King
- UVa 12826 - Incomplete Chessboard
- Kattis - mallmania
Knight Moves
- Entry Level: UVa 00439 - Knight Moves
- UVa 10426 - Knights’ Nightmare
- Kattis - grasshopper
- Kattis - knightjump
On Weighted Graph: Dijkstra’s, Easier
- Entry Level: Kattis - shortestpath1
- UVa 01112 - Mice and Maze
- UVa 10986 - Sending email
- Kattis - flowerytrails
On Weighted Graph: Dijkstra’s, Harder
- Entry Level: Kattis - visualgo
- UVa 00589 - Pushing Boxes
- UVa 12047 - Highest Paid Toll
- Kattis - blockcrusher
On Small Graph (with Negative Cycle): Bellman-Ford
- Entry Level: UVa 00558 - Wormholes
- UVa 10449 - Trac
- Kattis - hauntedgraveyard
- Kattis - xyzzy
ALL-PAIRS SHORTEST PATHS (APSP)
Floyd-Warshall Standard Application
- Entry Level: UVa 00821 - Page Hopping
- UVa 10354 - Avoiding Your Boss
- Kattis - allpairspath
- Kattis - importspaghetti
Variants
- Entry Level: UVa 01056 - Degrees of ...
- UVa 10342 - Always Late
- Kattis - arbitrage
- Kattis - kastenlauf
SPECIAL GRAPHS
Shortest/Longest Paths on DAG
- Entry Level: Kattis - mravi
- UVa 00452 - Project Scheduling
- UVa 10259 - Hippity Hopscotch
- Kattis - 246greaaat
DP, Counting Paths in DAG, Easier
- Entry Level: UVa 00825 - Walking on the Safe Side
- UVa 11957 - Checkers
- Kattis - robotsonagrid
- Kattis - runningsteps
Converting General Graph to DAG
- Entry Level: UVa 00590 - Always on the Run
- UVa 12875 - Concert Tour
- Kattis - cardmagic
- Kattis - maximizingwinnings
Tree
- Entry Level: UVa 00536 - Tree Recovery
- UVa 12347 - Binary Search Tree
- Kattis - adjoin
- Kattis - flight