{"id":20093877,"url":"https://github.com/bylotonix/dsba-contests-python","last_synced_at":"2025-03-02T16:16:16.285Z","repository":{"id":259886691,"uuid":"867234057","full_name":"ByloTonix/dsba-contests-python","owner":"ByloTonix","description":"Solutions for the DSBA Python Contests","archived":false,"fork":false,"pushed_at":"2024-10-28T13:07:37.000Z","size":77,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-13T03:30:15.763Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ByloTonix.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-03T17:22:46.000Z","updated_at":"2024-11-04T13:49:52.000Z","dependencies_parsed_at":"2024-10-28T16:39:33.120Z","dependency_job_id":"00a1e000-6171-4554-9db0-e5ee1dd43928","html_url":"https://github.com/ByloTonix/dsba-contests-python","commit_stats":null,"previous_names":["bylotonix/dsba-contests-python"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ByloTonix%2Fdsba-contests-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ByloTonix%2Fdsba-contests-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ByloTonix%2Fdsba-contests-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ByloTonix%2Fdsba-contests-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ByloTonix","download_url":"https://codeload.github.com/ByloTonix/dsba-contests-python/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241533628,"owners_count":19977826,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T16:48:38.901Z","updated_at":"2025-03-02T16:16:16.256Z","avatar_url":"https://github.com/ByloTonix.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python Programming DSBA 2023/24\n\nThis repository contains materials, notes, and tasks for the Python Programming course at DSBA, 2023/24.\n\n## Table of Contents\n1. [Contests](#contests)\n    - [Contest Restrictions](#contest-restrictions)\n2. [Grades](#grades)\n3. [Lecture Notes](#lecture-notes)\n4. [Workshop Notes](#workshop-notes)\n5. [Project](#project)\n6. [Syllabus](#syllabus)\n\n## Contests\n\n| Contest    | Deadline                | Topic                    |\n|------------|-------------------------|--------------------------|\n| [Contest 1](https://official.contest.yandex.ru/contest/52133/enter/)  | 24 sep 2023, 23:59:59    | Arithmetics              |\n| [Contest 2](https://official.contest.yandex.ru/contest/52153/enter/)  | 1 oct 2023, 23:59:59     | While, float, strings    |\n| [Contest 3](https://official.contest.yandex.ru/contest/52941/enter/)  | 9 oct 2023, 23:59:59     | Lists and tuples         |\n| [Contest 4](https://official.contest.yandex.ru/contest/53475/enter/)  | 16 oct 2023, 23:59:59    | Functions                |\n| [Contest 5](https://official.contest.yandex.ru/contest/53874/enter/)  | 23 oct 2023, 23:59:59    | Sets and dictionaries    |\n| [Contest 6](https://official.contest.yandex.ru/contest/54226/enter/)  | 6 nov 2023, 23:59:59     | Sorting and searching    |\n| [Contest 7](https://official.contest.yandex.ru/contest/56807/enter/)  | 11 dec 2023, 23:59:59    | Algorithms and data structures |\n| [Contest 8](https://official.contest.yandex.ru/contest/57220/enter/)  | 16 dec 2023, 23:59:59    | Functional programming   |\n\n### Contest Restrictions\n\nEach contest has specific restrictions to follow:\n- **Contest 1:**\n    - Task #18: Only use `+`, `-`, `*`, `/`, `//`, `%`, `**`\n- **Contest 2:**\n    - Task #11: No conditionals or loops\n    - Task #13: No conditionals or loops\n    - Task #17: No loops, no `.count()`\n- **Contest 3:**\n    - Task #10: Do not modify the initial list\n    - Task #11: Must modify the initial list\n    - Task #15: Modify the initial list, no additional lists\n    - Task #16: Modify the initial list, no additional lists, no `.insert()`\n    - Task #20: Only one pass through the list\n- **Contest 4:**\n    - Ensure function names, parameters, and return types match problem statements\n    - Task #9, #10: Complexity O(√n)\n    - Task #12: Only use `+1` and `-1`, no loops\n    - Task #13: Complexity O(log(n))\n    - Task #18, #19: Do not use lists or strings\n- **Contest 5:** No special requirements\n- **Contest 6:**\n    - Task #1: Do not modify the initial list, no additional lists, one pass through the list only\n    - Task #3, #4: Complexity O(n)\n    - Task #5: Implement `count_sort(A)` modifying the list; no built-in sorting functions\n    - Task #10: Complexity O(len(A) + len(B)), no built-in sorting functions\n    - Task #11, #12, #13: Do not store file content in memory\n- **Contest 7:** No special requirements\n- **Contest 8:** Tasks should be done using functional programming\n\n## Grades\n- Contest 1 - 20/20\n- Contest 2 - 19/20 (problem 17 - in this problem you were not allowed to use both for-loops and the count() method)\n- Contest 3 - 20/20\n- Contest 4 - 20/20\n- Contest 5 - 13/13\n- Contest 6 - 13/15 (problem 3 and 4 - .sort() is O(nlogn))\n- Contest 7 - 6/6\n- Contest 8 - 9/9\n\n## Lecture Notes\n\n| Date      | Lecture      | Topic                                 |\n|-----------|--------------|---------------------------------------|\n| 11 sep    | [Lecture 1](https://drive.google.com/file/d/1c4WKykTCu_6oHszQv0Gil7EhC1BfMo3W/view?usp=sharing)     | Introduction                         |\n| 18 sep    | [Lecture 2](https://drive.google.com/file/d/1tYi02lfKegixiBfGvDNQTgOi2mEveRnr/view?usp=sharing)     | Numeral systems, Real numbers, Strings|\n| 25 sep    | [Lecture 3](https://drive.google.com/file/d/1uyDea3oe3Nwok8DLsyMJ2LEi1Lh_pmHT/view?usp=sharing)     | Lists and tuples                     |\n| 2 oct     | [Lecture 4](https://drive.google.com/file/d/17avfsO2VORhY8TBEHjE1Wf54BL6MDTk3/view?usp=sharing)     | Functions and recursion              |\n| 16 oct    | [Lecture 5](https://drive.google.com/file/d/1gUSSwxaIy2Oh11ka6p1-SHOkyS3a27hG/view?usp=sharing)     | Sorting and searching algorithms     |\n| 6 nov     | [Lecture 6](https://drive.google.com/file/d/1fBE_QQpXXuSEUVm5YHM0Ciyu5SD7ZJa2/view?usp=sharing)     | NumPy and Pandas                     |\n| 13 nov    | [Lecture 7](https://drive.google.com/file/d/1IdkLlz0fdCweOxpk5Vn4YaHYqBStXfLL/view?usp=sharing)     | Data visualization                   |\n| 27 nov    | [Lecture 8](https://drive.google.com/file/d/1IYR9HbD5im6VvHO_hfHFVVf_LnbNHyjq/view?usp=sharing)     | Data structures: Stack, Queue, Graphs|\n| 4 dec     | [Lecture 9](https://drive.google.com/file/d/1ddigf0sO6gWbONbWYSXSeJBGeDcPcXrN/view?usp=sharing)     | Functional programming               |\n\n## Workshop Notes\n\n- [**Workshop 1**: Introduction](https://drive.google.com/file/d/1dCpdCjHx4TyluhPDnJtkKrcT3rCS7C9x/view?usp=sharing)\n- [**Workshop 2**: Numeral systems](https://drive.google.com/file/d/1No9ZnP-sQx6m4M-naezzWYsevSvrOIr6/view?usp=sharing)\n- [**Workshop 3**: Float and Strings](https://drive.google.com/file/d/1XUEBYFAPvL1KGct5Pu0lW7j6wClbaqO1/view?usp=sharing)\n- [**Workshop 4**: Strings](https://drive.google.com/file/d/1YC67EjbRtLDieTZp8ejffL5lpm9aRhgP/view?usp=sharing)\n- [**Workshop 5**: Lists and tuples](https://drive.google.com/file/d/1e_Rr-QA0QpdGramChDmnFan5RaX01PdM/view?usp=sharing)\n- [**Workshop 6**: Lists and tuples](https://drive.google.com/file/d/1Q613DRQC0K82mME8_s9BaHgj6KPip1ZS/view?usp=sharing)\n- [**Workshop 7-8**: Functions and recursion](https://drive.google.com/file/d/1cv8E-o68qrjqPUJ4W3jvIILBByzQ5TEs/view?usp=sharing)\n- [**Workshop 9**: Sets and dictionaries](https://drive.google.com/file/d/1ZiWaE6rk9Y-5glXiAu5FE2FOxSCUnsna/view?usp=sharing)\n- [**Workshop 10**: Sets and dictionaries](https://drive.google.com/file/d/1fLfU1FdOQDQu5YG-lyIFkTIA2FtqLNjt/view?usp=sharing)\n- [**Workshop 11**: Sort and search](https://drive.google.com/file/d/1_z0f8EO5ZhtYA0UBm0rUSiFeUo-vZy2h/view?usp=sharing)\n- [**Workshop 12**: Files, exceptions, and errors](https://drive.google.com/file/d/108tA9g7nhwU8AbqQX-2PiWAayZ_aNlZJ/view?usp=sharing)\n- [**Workshop 13**: NumPy](https://colab.research.google.com/drive/1koAMZOlmZjcjsQdbW9hKnq0PE_5BAPhj?usp=share_link)\n- [**Workshop 14**: Pandas](https://drive.google.com/file/d/1-G5HFY3I7hTFNuaW0nMDUXu8Bs-ytSrK/view?usp=share_link)\n- [**Workshop 15**: Visualization](https://drive.google.com/file/d/1mkNxs0bgWbR9DncjpXZPa7K_15w0e0-s/view?usp=sharing)\n\n## Project\n\n[My course project](https://github.com/ByloTonix/crime-stats)\n\n## Syllabus\n\nYou can find the full syllabus [here](https://www.hse.ru/ba/data/courses/848422882.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbylotonix%2Fdsba-contests-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbylotonix%2Fdsba-contests-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbylotonix%2Fdsba-contests-python/lists"}