課程信息
3.8
10 個評分
3 個審閱
100% 在線

100% 在線

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
中級

中級

完成時間(小時)

完成時間大約為23 小時

建議:5-8 hours/week...
可選語言

英語(English)

字幕:英語(English)
100% 在線

100% 在線

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
中級

中級

完成時間(小時)

完成時間大約為23 小時

建議:5-8 hours/week...
可選語言

英語(English)

字幕:英語(English)

教學大綱 - 您將從這門課程中學到什麼

1
完成時間(小時)
完成時間為 5 小時

Programming Competitions

We'll begin with introduction to the world of competitive programming — the rules, specialties and helpful tips on taking part in competitions in general. In a separate lesson, we'll learn how to test programs: what kinds of test cases there are, how to organize the search for a bugtest, and particularly a method of automating testing called stress-testing....
Reading
9 個視頻 (總計 74 分鐘), 2 個閱讀材料, 2 個測驗
Video9 個視頻
Specifics of Programming Competitions11分鐘
Problem Example8分鐘
Steps in Solving a Problem6分鐘
Soft Skills4分鐘
Competitions Review8分鐘
Testing, Sample Tests, Min/Max Tests11分鐘
Custom Cases and Testing Workflow7分鐘
Stress-testing10分鐘
Reading2 個閱讀材料
Welcome!4分鐘
Solution to Problem 1-4: Straight Flush10分鐘
Quiz1 個練習
Inventing Tests8分鐘
2
完成時間(小時)
完成時間為 4 小時

CORRECTNESS FIRST

In this module, we'll start with the most basic things you need to actually solve algorithmic problems. First, we'll talk about structuring your code and intuition behind it — why it's very important, how to manage dependencies between parts of different purpose, how intuitive rules are enforced through formal invariants and conditions. We'll also identify a special class of solutions — brute force solutions — which are always correct, but often very slow. And we'll learn how to estimate running time of our solutions by using a powerful concept of big-O notation....
Reading
9 個視頻 (總計 66 分鐘), 1 個閱讀材料, 2 個測驗
Video9 個視頻
What is Readability?5分鐘
Intuitive "Proofs" are wrong5分鐘
Defining solution set7分鐘
Recursive backtracking7分鐘
Worst cases6分鐘
Big-O notation10分鐘
From theory to practice7分鐘
How to make a solution faster9分鐘
Reading1 個閱讀材料
Solution to Problem 2-4: Expression Evaluation10分鐘
Quiz1 個練習
Time complexity6分鐘
3
完成時間(小時)
完成時間為 5 小時

COMMON STRUGGLES

In competitive programming, there are a lot of things to stumble upon — if you don't know them first! We'll delve into how numbers are represented in computers, identify the most common issues with integer and floating point arithmetic, and learn to overcome them. We'll also discuss how to get stuck less in general, especially when debugging solutions....
Reading
11 個視頻 (總計 78 分鐘), 1 個閱讀材料, 3 個測驗
Video11 個視頻
Dealing with Overflow5分鐘
Non-integers8分鐘
Fixed Point Numbers and Errors7分鐘
Floating Point Numbers6分鐘
Where and How to Use Doubles10分鐘
More on Floating Point8分鐘
Debugging Small Programs5分鐘
Simplifying Code7分鐘
Double-checking5分鐘
Upsolving7分鐘
Reading1 個閱讀材料
Solution to Problem 3-4: Binary Knapsack10分鐘
Quiz2 個練習
Numbers10分鐘
Upsolving2分鐘
4
完成時間(小時)
完成時間為 5 小時

COMMON STRUGGLES 2

We continue considering common struggles arising in competitive programming. We start by learning how to prove that a natural greedy algorithm is correct. We also discuss programming languages: what features are most helpful on competitions, and what are the advantages and pitfalls of several frequently used languages. Finally, we study an essential and easy-to-implement data structure: the segment tree....
Reading
14 個視頻 (總計 97 分鐘), 1 個閱讀材料, 2 個測驗
Video14 個視頻
Warmup7分鐘
Proving Correctness7分鐘
Activity Selection9分鐘
Maximum Scalar Product6分鐘
Greedy Ordering6分鐘
Segment Tree Structure4分鐘
Summing a Segment7分鐘
Modifying an Element4分鐘
Basic Data Structures5分鐘
Advanced Data Structures and I/O7分鐘
C++11分鐘
Java5分鐘
Python8分鐘
Comparing Languages4分鐘
Reading1 個閱讀材料
Solution to Problem 4-4: Maximal Sum Suba10分鐘
Quiz1 個練習
Segment Tree6分鐘

講師

Avatar

Alexander S. Kulikov

Visiting Professor
Department of Computer Science and Engineering

Alexander Logunov

Competitive Programming Co-coach at SPbSU

關於 Saint Petersburg State University

The Saint-Petersburg University (SPbU) is a state university, located in Saint-Petersburg, Russia. Founded in 1724, SPbU is the oldest institution of higher education in Russia. At present, there are more than 30 000 students in SPbU studying 398 programmes...

常見問題

  • 注册以便获得证书后,您将有权访问所有视频、测验和编程作业(如果适用)。只有在您的班次开课之后,才可以提交和审阅同学互评作业。如果您选择在不购买的情况下浏览课程,可能无法访问某些作业。

  • 您购买证书后,将有权访问所有课程材料,包括评分作业。完成课程后,您的电子课程证书将添加到您的成就页中,您可以通过该页打印您的课程证书或将其添加到您的领英档案中。如果您只想阅读和查看课程内容,可以免费旁听课程。

還有其他問題嗎?請訪問 學生幫助中心