Skip to content
CCC Python Course

Constructive problem solving

Stage
5
Module
M5.1
Lessons
1

In this module

  • Build any valid witness instead of testing all possibilities.
  • Start from simple patterns and handle extreme cases.
  • Use symmetry and invariants to constrain the search.
  • Verify output before submitting a solution.

Before this module

Lessons

  1. 1Building a valid witness

Practice

Try these on the judges. Each link opens the problem on WMOJ or DMOJ.

  1. 2023 S3
    Palindromic Poster (opens on WMOJ in a new tab) WMOJ

    Build a palindromic poster on a grid by choosing characters for each cell.

  2. 2019 S3
    Arithmetic Square (opens on DMOJ in a new tab) DMOJ

    Fill a grid so all rows and columns have the same sum.

    Why DMOJ: An older constructive-casework problem with the same build-and-verify approach.