Session

for Student

Close

Competitive Programming Workshop

2023.10.11 - 2023.12.20

Times:10 sessions

Format: Face-to-face

Presented:AIC

(1) Course Outline

This course aims to improve the ability of “competitive programming,” in which participants compete in their ability to solve problems using programming. By working on specific problems, participants can hone both their algorithmic skills, which are the foundation of programming, and their practical coding skills. We offer several courses according to the level of the participants, and they range from complete beginners to those who have been engaged in competitive programming on a regular basis. The course basically progresses in the form of exercises and provides extensive support so that students can progress according to their individual progress. For those who are new to programming, we recommend taking this course in conjunction with the “First-Time Pro” course.

(2) Content of each session

Basically, each session will provide an opportunity to talk in groups.

In the virtual contest session, the first half of the session will be used to solve the virtual contest, and the second half will be used for explanation and discussion.

In the first half, the person in charge will assist the beginners. Slides with hints for simple problems will be provided whenever possible. Since many competitive programming contests are based on spending 100-120 minutes working on problems, we assume that many participants will not have enough time to work on the problems during the workshop time alone. For this reason, we intend to release the set of problems to be covered in advance so that participants who cannot attend on the day of the workshop and those who wish to take more time can work on them. The second half of the session will be devoted to a brief explanation, followed by a discussion period during which participants can share their own solutions.

In the advanced (C) course, a virtual contest will be held, followed by a brief explanation.

For the beginner (A) and intermediate (B) courses, a learning route (materials and sequence for learning) will be provided in advance, and participants will proceed at their own pace. The course is designed to allow students to follow the learning route in and out of the course, and to help them when they get stuck. Basically, we will follow the contents of the “Official Textbook for the Practical Algorithm Proficiency Test: Entry to Intermediate Level,” and prepare materials to supplement the missing exercises and explanations. We will also include the problems that beginners and intermediates should solve that day in the virtual contest in Course C, so that what participants are working on will not be too divided between the different courses.

In both the beginner and intermediate courses, participants will be asked to move up to a higher level when they reach the end of the study route and have reached a sufficient level of competence.

In the times when students work in teams to challenge problems, they will solve problems in a format similar to ICPC and other contests in which they participate in teams, unlike the usual practice where they hone their skills by themselves. The opportunity to enjoy competitive programming in a large group, such as in this workshop, is rare, and for this reason we plan to increase the percentage of team efforts in the fall semester, which cannot be done alone. We plan to allocate time in the same way as for the virtual contest sessions. In addition, the person in charge will participate in or supervise the teams as needed.

In the seminar-style small presentation session, each participant is expected to give a presentation of up to 15 minutes on a topic related to competitive programming chosen in advance by the participant. One of the goals is to share knowledge with other participants, but an even greater goal is to deepen one’s own understanding through the presentation. In addition, we believe that the content will present a high hurdle for participants who are trying the seminar format for the first time, and participants may choose a topic of their own choice or work from examples of topics provided by the instructor. In addition, we will try to turn the course to the end of the workshop as much as possible, as we believe that beginners should spend more time on the topic.

In parallel with the workshop, participants will be given the opportunity to try their hand at making questions. The problem solving is not something that can be completed only during the workshop, so it will be an activity outside of the workshop. As a rule, competitive programming questions are created jointly by the author and the tester. The tester’s role is to check the questions, suggest improvements, and ensure the quality of the questions. The three persons in charge of this project will be mainly testers. We are also considering asking motivated and experienced participants to be testers. At the end of the fall semester, we are planning to hold a contest on an open platform such as yukicoder for external participants using the problems they have created.

Session 1 Guidance 10/11

Guidance. After an overview of competitive programming and an explanation of the progression of the course, the course will be divided into courses. For each course, we will explain how to proceed with the course and preparation (e.g., building the environment).

The seminar will also include an explanation of the Question Asking Experience and seminar-style presentations.

Session 2: 10/18

A virtual contest will be held. Depending on participants’ requests, the format may be changed to an impromptu team competition.

session 3: 10/25

Same as the 2nd session. Depending on participants’ requests, the format will be changed to an impromptu team competition.

Session 4: 11/ 1

Same as the 2nd session. Will be changed to an impromptu team competition format depending on participants’ requests.

Session 5: 11/ 8

We are planning to hold a seminar-style presentation. Participants with more experience will be given priority.

Session 6: 11/15

Same as the 2nd meeting. Depending on participants’ requests, we may change to an impromptu team competition format.

Session 7: 11/29

Same as the 2nd session. The format will be changed to an impromptu team competition, depending on the participants’ requests.

Session 8: 12/ 6

Same as the 2nd meeting. The format will be changed to an impromptu team competition, depending on the participants’ requests.

Session 9: 12/13

Same as the 2nd session. The format will be changed to an impromptu team format depending on the participants’ requests.

Session 10: 12/20

We are planning to hold a seminar-style presentation.

ページトップ