This repository has been archived on 2022-06-22. You can view files and clone it, but cannot push or open issues or pull requests.
usaco-guide/content/1_Intro/Expected.mdx

56 lines
2.4 KiB
Text
Raw Normal View History

2020-07-15 01:02:57 +00:00
---
id: expected
title: Expected Knowledge
author: Nathan Wang, Benjamin Qi
2020-07-15 01:22:24 +00:00
description: What you're expected to know before continuing onto the rest of USACO Bronze.
2020-07-15 01:02:57 +00:00
---
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
2020-07-15 01:22:24 +00:00
The following require relatively little programming experience and no algorithmic knowledge.
2020-07-15 01:02:57 +00:00
<problems-list problems={metadata.problems.general} />
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.
<resources>
<resource source="CodeSignal" title="Arcade, Interview Practice" url="https://codesignal.com/" starred>can practice basics</resource>
<resource source="Philippines OI" title="Prepare" url="https://noi.ph/prepare/" starred>lots of links!</resource>
<resource source="VPlanet" title="Learn to Code" url="https://www.vplanetcoding.com/course1">basic problems, mostly loops</resource>
<resource source="IOI" title="Getting Started" url="https://ioinformatics.org/page/getting-started/14">not up to date</resource>
<resource source="Quora" title="Joshua Pan - Schedule for Beginners" url="https://www.quora.com/What-is-a-good-schedule-to-follow-for-becoming-better-at-competitive-programming-for-beginners">generally good, although CSES problemset (see "Resources") is definitely a better place to start than USACO Training or Codechef</resource>
</resources>