{"id":29164050,"url":"https://github.com/kamyu104/googlecodejam-2015","last_synced_at":"2025-07-01T06:39:51.093Z","repository":{"id":30320617,"uuid":"33872866","full_name":"kamyu104/GoogleCodeJam-2015","owner":"kamyu104","description":"🏃 Python Solutions of All 28 Problems of GCJ 2015","archived":false,"fork":false,"pushed_at":"2020-02-10T14:38:21.000Z","size":313,"stargazers_count":26,"open_issues_count":0,"forks_count":22,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-04-12T00:58:50.572Z","etag":null,"topics":["algorithm","codejam","competitive-programming","contest-programming","gcj","google-code-jam","googlecodejam","programming-contests","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kamyu104.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-13T14:20:35.000Z","updated_at":"2023-06-13T07:47:02.000Z","dependencies_parsed_at":"2022-09-14T00:11:10.893Z","dependency_job_id":null,"html_url":"https://github.com/kamyu104/GoogleCodeJam-2015","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kamyu104/GoogleCodeJam-2015","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamyu104%2FGoogleCodeJam-2015","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamyu104%2FGoogleCodeJam-2015/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamyu104%2FGoogleCodeJam-2015/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamyu104%2FGoogleCodeJam-2015/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kamyu104","download_url":"https://codeload.github.com/kamyu104/GoogleCodeJam-2015/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kamyu104%2FGoogleCodeJam-2015/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262915662,"owners_count":23383847,"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":["algorithm","codejam","competitive-programming","contest-programming","gcj","google-code-jam","googlecodejam","programming-contests","python"],"created_at":"2025-07-01T06:39:41.719Z","updated_at":"2025-07-01T06:39:51.074Z","avatar_url":"https://github.com/kamyu104.png","language":"Python","readme":"# [GoogleCodeJam 2015](https://codingcompetitions.withgoogle.com/codejam/archive/2015) ![Language](https://img.shields.io/badge/language-Python-orange.svg) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE.md) ![Progress](https://img.shields.io/badge/progress-28%20%2F%2028-ff69b4.svg)\n\nPython solutions of Google Code Jam 2015. Solution begins with `*` means it will get TLE in the largest data set (total computation amount \u003e `10^8`, which is not friendly for Python to solve in 5 ~ 15 seconds). A `4-minute` timer is set for the small dataset and a `8-minute` timer is set for the large dataset this year.\n\n* [Code Jam 2014](https://github.com/kamyu104/GoogleCodeJam-2014)\n* [Qualification Round](https://github.com/kamyu104/GoogleCodeJam-2015#qualification-round)\n* [Round 1A](https://github.com/kamyu104/GoogleCodeJam-2015#round-1a)\n* [Round 1B](https://github.com/kamyu104/GoogleCodeJam-2015#round-1b)\n* [Round 1C](https://github.com/kamyu104/GoogleCodeJam-2015#round-1c)\n* [Round 2](https://github.com/kamyu104/GoogleCodeJam-2015#round-2)\n* [Round 3](https://github.com/kamyu104/GoogleCodeJam-2015#round-3)\n* [World Finals](https://github.com/kamyu104/GoogleCodeJam-2015#world-finals)\n* [Code Jam 2016](https://github.com/kamyu104/GoogleCodeJam-2016)\n\n## Qualification Round\n| # | Title | Solution | Time | Space | Difficulty | Tag | Note |\n|---| ----- | -------- | ---- | ----- | ---------- | --- | ---- |\n|A| [Standing Ovation](https://code.google.com/codejam/contest/6224486/dashboard#s=p0)| [Python](./Qualification%20Round/standing-ovation.py)| _O(S)_ | _O(1)_ | Easy | | |\n|B| [Infinite House of Pancakes](https://code.google.com/codejam/contest/6224486/dashboard#s=p1)| [Python](./Qualification%20Round/infinite-house-of-pancakes.py)| _O(max(P) * D)_ | _O(1)_ | Easy | | |\n|C| [Dijkstra](https://code.google.com/codejam/contest/6224486/dashboard#s=p2)| [Python](./Qualification%20Round/dijkstra.py)| _O(L)_ | _O(L)_ | Medium | | |\n|D| [Ominous Omino](https://code.google.com/codejam/contest/6224486/dashboard#s=p3)| [Python](./Qualification%20Round/ominous-omino.py)| _O(1)_ | _O(1)_ | Hard | | |\n\n## Round 1A\n| # | Title | Solution | Time | Space | Difficulty | Tag | Note |\n|---| ----- | -------- | ---- | ----- | ---------- | --- | ---- |\n|A| [Mushroom Monster](https://code.google.com/codejam/contest/4224486/dashboard#s=p0)| [Python](./Round%201A/mushroom-monster.py)| _O(S)_ | _O(1)_ | Easy | | |\n|B| [Haircut](https://code.google.com/codejam/contest/4224486/dashboard#s=p1)| [Python](./Round%201A/haircut.py)| _O(log(N * max(M)) + BlogB)_ | _O(B)_ | Medium | | Binary Search |\n|C| [Logging](https://code.google.com/codejam/contest/4224486/dashboard#s=p2)| [C++](./Round%201A/logging.cpp) [Python](./Round%201A/logging.py)| _O(N^2)_ | _O(N)_ | Hard | | |\n\n## Round 1B\n| # | Title | Solution | Time | Space | Difficulty | Tag | Note |\n|---| ----- | -------- | ---- | ----- | ---------- | --- | ---- |\n|A| [Counter Culture](https://code.google.com/codejam/contest/8224486/dashboard#s=p0)| [Python](./Round%201B/counter-culture.py)| _O(logN)_ | _O(logN)_ | Easy | | |\n|B| [Noisy Neighbors](https://code.google.com/codejam/contest/8224486/dashboard#s=p1)| [C++](./Round%201B/noisy-neighbors.cpp) [Python](././Round%201B/noisy-neighbors.py)| _O(R * C)_ | _O(1)_ | Medium | | |\n|C| [Hiking Deer](https://code.google.com/codejam/contest/8224486/dashboard#s=p2)| [C++](./Round%201B/hiking-deer.cpp) [Python](./Round%201B/hiking-deer.py)| _O(HlogH)_ | _O(H)_ | Hard | | Heap |\n\n## Round 1C\n| # | Title | Solution | Time | Space | Difficulty | Tag | Note |\n|---| ----- | -------- | ---- | ----- | ---------- | --- | ---- |\n|A| [Brattleship](https://code.google.com/codejam/contest/4244486/dashboard#s=p0)| [Python](./Round%201C/brattleship.py)| _O(1)_ | _O(1)_ | Easy | | |\n|B| [Typewriter Monkey](https://code.google.com/codejam/contest/4244486/dashboard#s=p1)|[Python](./Round%201C/typewriter-monkey.py)| _O(K + L * S)_ | _O(K + L)_ | Medium | | DP |\n|C| [Less Money, More Problems](https://code.google.com/codejam/contest/4244486/dashboard#s=p2)| [Python](./Round%201C/less-money-more-problems.py)| _O(V / ((C + D) * D))_ | _O(1)_ | Easy | | |\n\n## Round 2\n| # | Title | Solution | Time | Space | Difficulty | Tag | Note |\n|---| ----- | -------- | ---- | ----- | ---------- | --- | ---- |\n|A| [Pegman](https://code.google.com/codejam/contest/8234486/dashboard#s=p0)| [Python](./Round%202/pegman.py)| _O(R * C)_ | _O(R + C)_ | Easy | | |\n|B| [Kiddie Pool](https://code.google.com/codejam/contest/8234486/dashboard#s=p1)| [Python](./Round%202/kiddie-pool.py)| _O(NlogN)_ | _O(1)_ | Medium | | Optimization |\n|C| [Bilingual](https://code.google.com/codejam/contest/8234486/dashboard#s=p2)| [C++](./Round%202/bilingual.cpp) [Python](./Round%202/bilingual.py)| _O((N * L)^2)_ | _O(N * L)_ | Hard | | Max Flow |\n|D| [Drum Decorator](https://code.google.com/codejam/contest/8234486/dashboard#s=p3)| [Python](./Round%202/drum-decorator.py)| _O(R^2)_ | _O(1)_ | Hard | | DP |\n\n## Round 3\n| # | Title | Solution | Time | Space | Difficulty | Tag | Note |\n|---| ----- | -------- | ---- | ----- | ---------- | --- | ---- |\n|A| [Fairland](https://code.google.com/codejam/contest/4254486/dashboard#s=p0)| [Python](./Round%203/fairland.py)| _O(NlogN)_ | _O(N)_ | Easy | | |\n|B| [Smoothing Window](https://code.google.com/codejam/contest/4254486/dashboard#s=p1)| [Python](./Round%203/smoothing-window.py)| _O(N)_ | _O(N)_ | Medium | | |\n|C| [Runaway Quail](https://code.google.com/codejam/contest/4254486/dashboard#s=p2)| [C++](./Round%203/runaway-quail.cpp) [Python](./Round%203/runaway-quail.py)| _O(N^3)_ | _O(N^2)_ | Medium | | DP |\n|D| [Log Set](https://code.google.com/codejam/contest/4254486/dashboard#s=p3)| [Python](./Round%203/log-set.py)| _O(N * (logN)^2)_ | _O(logN)_ | Hard | | Hash |\n|E| [River Flow](https://code.google.com/codejam/contest/4254486/dashboard#s=p4)| [Python](./Round%203/river-flow.py)| _O(DlogD)_ | _O(D)_ | Medium |\n\n## World Finals\nYou can relive the magic of the 2015 Code Jam World Finals by watching the [Live Stream Recording](https://www.youtube.com/watch?v=rh_EYIu7Ztc) of the competition, problem explanations, interviews with Google and Code Jam engineers, and announcement of winners.\n\n| # | Title | Solution | Time | Space | Difficulty | Tag | Note |\n|---| ----- | -------- | ---- | ----- | ---------- | --- | ---- |\n|A| [Costly Binary Search](https://code.google.com/codejam/contest/5224486/dashboard#s=p0)| [C++](./World%20Finals/costly-binary-search.cpp) [PyPy](./World%20Finals/costly-binary-search.py) | _O(NlogN)_ | _O(N)_ | Medium | | DP |\n|B| [Campinatorics](https://code.google.com/codejam/contest/5224486/dashboard#s=p1)| [Python](./World%20Finals/campinatorics.py) | _O(N)_ | _O(N)_ | Medium | | DP, Euler's Theorem |\n|C| [Pretty Good Proportion](https://code.google.com/codejam/contest/5224486/dashboard#s=p2)| [C++](./World%20Finals/pretty-good-proportion.cpp) [Python](./World%20Finals/pretty-good-proportion.py) | _O(NlogN)_ | _O(N)_ | Easy | |Sort|\n|D| [Taking Over The World](https://code.google.com/codejam/contest/5224486/dashboard#s=p3)| [C++](./World%20Finals/taking-over-the-world.cpp) [Python](./World%20Finals/taking-over-the-world.py) | _O(K * N * M^2)_ |  _O(N^2)_ | Hard | | Max Flow |\n|E| [Merlin QA](https://code.google.com/codejam/contest/5224486/dashboard#s=p4)| [Python](./World%20Finals/merlin-qa.py) | _O(M! * (N * M))_ | _O(N * M)_ | Medium | | |\n|F| [Crane Truck](https://code.google.com/codejam/contest/5224486/dashboard#s=p5)| [C++](./World%20Finals/crane-truck.cpp) [PyPy](./World%20Finals/crane-truck.py) | _O(N^2)_ | _O(N^2)_ | Very Hard | ❤️ | Simulation |\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkamyu104%2Fgooglecodejam-2015","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkamyu104%2Fgooglecodejam-2015","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkamyu104%2Fgooglecodejam-2015/lists"}