--- id: expected title: Expected Knowledge author: Nathan Wang, Benjamin Qi description: What you're expected to know before continuing onto the rest of USACO Bronze. --- import { Problem } from "../models"; export const metadata = { problems: { general: [ new Problem("Bronze", "Promotion Counting", "591", "Very Easy"), new Problem("Bronze", "Word Processor", "987", "Very Easy"), new Problem("Bronze", "Square Pasture", "663", "Very Easy"), new Problem("Bronze", "Bucket Brigade", "939", "Very Easy"), ] } }; The remainder of this guide assumes that you know the basics of how to code in one of the languages listed above, including the following topics: - Variables - Data types - Reading Input - Writing Output - Loops - If / Else - Logical operators - Functions - Basic Recursion (a function calling itself) - Arrays - Multidimensional Arrays In particular, contestants using Java should be familiar with roughly the first half of AP Computer Science A. Familiarity with [competition math](https://github.com/bqi343/USACO/blob/master/Resources/Competition%20Math.md) (ex. AIME qualification) is helpful but not required. ## Introductory Problems The following require relatively little programming experience and no algorithmic knowledge. Also check the [CSES Introductory Problems](https://cses.fi/problemset/list/) up to and including "Palindrome Reorder." ## Getting Started You may find the following resources helpful for familiarizing yourself with your language of choice. can practice basics lots of links! basic problems, mostly loops not up to date generally good, although CSES problemset (see "Resources") is definitely a better place to start than USACO Training or Codechef