Chais_2026

E102 Competitive Programming as a Source for Problems and Tools for CS1 (Short paper) student cohorts are highly heterogeneous. Students differ widely in mathematical and scientific preparation. Core concepts such as abstraction and recursion are known to be difficult for novice learners (Armoni, 2013), particularly when combined with learning a first programming language, such as C in our course. Instruction consisted of weekly four hour lectures (recorded for later viewing) and practical workshops emphasizing hands-on learning. Typically, students complete a small number of assignments that are manually graded, often with substantial delays due to limited instructional resources. To address this issue, we explored the integration of techniques inspired by competitive programming (CP), focusing not on competition itself but on its rich ecosystem of problems, automatic grading, and immediate feedback. We curated a collection of CP style problems suitable for beginners, designed to require meaningful effort while remaining accessible. A simple example is identifying a “lonely” number in a list where all others appear in pairs. The full set of problems may be found on https://cpe3.islands.co.il . To support this approach, we developed a web based submission system that provides immediate feedback. While many CS1 problems can be solved by LLMs, problems drawn from CP platforms are significantly more challenging for such models (Shuvo, 2025), reducing the temptation to rely solely on AI tools. The paper introduces competitive programming in an educational context, describes the developed tool, and reports on its use in a CS1 course. Competitive Programming Competitive programming (CP) encompasses algorithmic problem-solving, optimization, and related domains such as cybersecurity and software engineering. Its roots lie in the ACM International Collegiate Programming Contest (ICPC), which has played a central role in shaping the field. Today, numerous international contests and platforms such as ICPC , IOI (IOI), IEEEXtreme (IEEE), Codeforces (Mirzayanov, 2020), LeetCode, and HackerRank (HackerRank), support millions of participants worldwide. These platforms offer extensive problem repositories, detailed solutions, and automated evaluation systems. From an educational perspective, CP platforms provide high quality problems with robust test cases that emphasize correctness and efficiency. While complexity was not emphasized in CS1, such platforms offer motivated students opportunities for deeper engagement. Our goal in adopting CP inspired methods was to streamline the learning process: helping students read and understand problem statements, develop solutions, and receive immediate feedback. Prior studies (e.g., (Coore, 2019); (Yuen, 2023); (Zheng, 2022)) report similar benefits. We view CP not as a competitive framework but as a pedagogical resource that supports engagement, practice, and skill development. The Website To integrate CP into our course, we required a suitable technological platform. Existing CP platforms such as HackerRank or Codeforces have been used successfully by others (Nishanov, 2024), but none met our institutional requirements, particularly seamless integration with the college’s single signon (SSO) system. We evaluated several systems, including CMS (Maggiolo, 2012) and Virtual Judge (Han), but found them unsuitable for managing a curated problem collection in an educational setting. Consequently, we designed and implemented our own web-based system.

RkJQdWJsaXNoZXIy Mjk0MjAwOQ==