An open API service indexing awesome lists of open source software.

https://github.com/denvash/codingame-puzzles-solutions

Elegant puzzles solutions 🖊
https://github.com/denvash/codingame-puzzles-solutions

c codingame codingame-solutions cpp csharp java javascript kotlin loop math memoization movement nested-loops pathfinding php puzzle-solution puzzles python recursion string-manipulation

Last synced: 8 months ago
JSON representation

Elegant puzzles solutions 🖊

Awesome Lists containing this project

README

          

# ![codingame-banner](https://user-images.githubusercontent.com/27515937/50617155-691f9f80-0ef4-11e9-8f30-7ed40f1d91fa.png)

![](https://img.shields.io/github/languages/count/denvash/codingame-puzzles-solutions.svg) ![](https://img.shields.io/github/languages/top/denvash/codingame-puzzles-solutions.svg) ![Hits](https://hitcounter.pythonanywhere.com/count/tag.svg?url=https%3A%2F%2Fgithub.com%2Fdenvash%2Fcodingame-puzzles-solutions)

Various :star2: solutions :star: for [Codingame](https://www.codingame.com/training) puzzles.

## Contribute

If you are new check out [How to contribute to a project on Github](https://gist.github.com/MarcDiethelm/7303312).

Got an **elegant** solution? **Other** programming language? Found a *bug*?

Post an issue or send an email: _justdenva@gmail.com_, I'll add it up!

## Easy

- [1×1×1 Rubik’s cube movements](/1-Easy/1×1×1_Rubik’s_cube_movements.js) *[Conditions]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/111-rubiks-cube-movements)
- [Balanced ternary computer: encode](/1-Easy/Balanced_ternary_computer:_encode.kt) *[Math]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/balanced-ternary-computer-encode)
- [Bank Robbers](/1-Easy/Bank_Robbers.kt) *[Math]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/bank-robbers)
- [Brackets, extreme edition](/1-Easy/Brackets,_extreme_edition.kt) *[Conditions]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/brackets-extreme-edition)
- [Bulk Email Generator](/1-Easy/Bulk-Email-Generator.js) *[Regex]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/bulk-email-generator)
- [Counting Squares on Pegs](/1-Easy/Counting-Squares-on-Pegs.js) *[Loops]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/counting-squares-on-pegs)
- [Disordered First Contact](/1-Easy/Disordered-First-Contact.js) *[String-Manipulation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/disordered-first-contact)
- [Ghost Legs](/1-Easy/Ghost-Legs.js) *[Functional-Programming]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/ghost-legs)
- [Gravity Tumbler](/1-Easy/Gravity-Tumbler.kt) *[String-Manipulation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/gravity-tumbler)
- [Hidden Word](/1-Easy/Hidden-Word.js) *[2D-Array, Functional-Programming]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/hidden-word)
- [Horse-racing Hyperduals](/1-Easy/Horse-racing-Hyperduals.js) *[Math, Functional-Programming]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/horse-racing-hyperduals)
- [How time flies](/1-Easy/How-time-flies.kt) *[Date]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/how-time-flies)
- [ISBN Check digit](/1-Easy/ISBN-Check-digit.js) *[Regex]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/isbn-check-digit)
- [Jack Silver: The Casino](/1-Easy/Jack-Silver:-The-Casino.js) *[Conditions]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/jack-silver-the-casino)
- [May the Triforce be with you!](/1-Easy/May-the-Triforce-be-with-you!.js) *[Loops]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/may-the-triforce-be-with-you)
- [Morellet’s random lines](/1-Easy/Morellet’s-random-lines.js) *[Math, Functional-Programming]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/morellets-random-lines)
- [Nature of quadrilaterals](/1-Easy/Nature-of-quadrilaterals.js) *[Math]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/nature-of-quadrilateral)
- [orDer oF succeSsion](/1-Easy/orDer-oF-succeSsion.kt) *[Loops]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/order-of-succession)
- [Organic Compounds](/1-Easy/Organic-Compounds.js) *[Nested Loops, Conditions]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/organic-compounds)
- [Rugby Score](/1-Easy/Rugby-Score.js) *[Nested Loops]* [![url](url.svg)](https://www.codingame.com/training/1-Easy/rugby-score)
- [Self driving car testing.js](/1-Easy/Self-driving-car-testing.js) *[Loops]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/self-driving-car-testing)
- [Simple-Awale](/1-Easy/Simple-Awale.js) *[For-Loop]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/simple-awale)
- [The River I](/1-Easy/The-River-I.kt) *[Conditions]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/the-river-i-)
- [The River II](/1-Easy/The-River-II.kt) *[For-Loop]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/the-river-ii-)
- [The Travelling Salesman Problem](/1-Easy/The-Travelling-Salesman-Problem.js) *[Math]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/the-travelling-salesman-problem)
- [What's so complex about Mandelbrot?](/1-Easy/Whats-so-complex-about-Mandelbrot.js) *[Math]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/xml-mdf-2016)
- [XML MDF-2016](/1-Easy/XML-MDF-2016.js) *[Functional-Programming]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/whats-so-complex-about-mandelbrot)
- [Onboarding](/1-Easy/Onboarding.js) *[Condition]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/onboarding)
- [Defibrillators](/1-Easy/Defibrillators.js) *[Math]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/defibrillators)
- [Expand the polynomial](/1-Easy/Expand-the-polynomial.js) *[Functional-Programming, Regex, String Manipulation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/expand-the-polynomial)
- [Pirate's treasure](/1-Easy/Pirate's-treasure.js) *[2D-Array]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/pirates-treasure)
- [Add'em Up](/1-Easy/Add'em-Up.js) *[List]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/addem-up)
- [Encryption/Decryption of Enigma Machine](/1-Easy/Encryption-Decryption-of-Enigma-Machine.js) *[Functional-Programming]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/encryptiondecryption-of-enigma-machine)
- [Guessing n Cheating](/1-Easy/Guessing-n-Cheating.js) *[Conditions]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/guessing-n-cheating)
- [Rooks Movements](/1-Easy/Rooks-Movements.js) *[Conditions, For-Loops]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/rooks-movements)
- [Carmichael Numbers](/1-Easy/Carmichael-Numbers.js) *[Math]* [![url](url.svg)](https://www.codingame.com/training/easy/carmichael-numbers)
- [Carmichael Numbers Pre](/1-Easy/Carmichael-Numbers-Pre.js) *[Pre-Computation]* [![url](url.svg)](https://www.codingame.com/training/easy/carmichael-numbers)
- [Darts](/1-Easy/Darts.js) *[Math, Map, Sort-Map-By-Value]* [![url](url.svg)](https://www.codingame.com/training/easy/darts)
- [Dead men's shot](/1-Easy/Dead-mens-shot.js) *[Point inside Polygon]* [![url](url.svg)](https://www.codingame.com/training/easy/dead-mens-shot)
- [Rectangular block spinner](/1-Easy/Rectangular-block-spinner.js) *[String Manipulation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/rectangular-block-spinner)
- [Credit Card Verifier](/1-Easy/Credit-Card-Cerifier.js) *[Reduce]* [![url](url.svg)](https://www.codingame.com/training/easy/credit-card-verifier-luhns-algorithm)
- [Hunger Games](/1-Easy/Hunger-Games.js) *[String Manipulation]* [![url](url.svg)](https://www.codingame.com/training/easy/hunger-games)
- [The Dart 101](/1-Easy/The-Dart-101.js) *[Conditions, Reduce]* [![url](url.svg)](https://www.codingame.com/training/easy/the-dart-101)
- [Brick in the Wall](/1-Easy/Brick-in-the-Wall.js) *[Greedy Algorithms, Mathematics]* [![url](url.svg)](https://www.codingame.com/training/easy/the-dart-101)
- [Blowing Fuse](/1-Easy/Blowing-Fuse.js) *[Conditions]* [![url](url.svg)](https://www.codingame.com/training/easy/blowing-fuse)

## Medium

- [ANEO Sponsored Puzzle](/2-Medium/ANEO-Sponsored-Puzzle.js) *[Math]* [![url](url.svg)]((https://www.codingame.com/ide/puzzle/aneo))
- [Dwarfs standing on the shoulders of giants](/2-Medium/Dwarfs-standing-on-the-shoulders-of-giants.java) *[Graphs, Memoization, Recursion]* [![url](url.svg)]((https://www.codingame.com/training/medium/dwarfs-standing-on-the-shoulders-of-giants))
- [Scrabble](/2-Medium/Scrabble.java) *[Dictionary]* [![url](url.svg)]((https://www.codingame.com/training/medium/scrabble))
- [Telephone Numbers](/2-Medium/Telephone-Numbers.java) *[Sets, Tries]* [![url](url.svg)]((https://www.codingame.com/training/medium/telephone-numbers))
- [The Gift](/2-Medium/The-Gift.php) *[Greedy Algorithms]* [![url](url.svg)]((https://www.codingame.com/training/medium/the-gift))
- [Network Cabling (Scala)](/2-Medium/Network-Cabling.scala) *[Loops, Distances, Medians]* [![url](url.svg)]((https://www.codingame.com/training/medium/network-cabling))
- [Network Cabling (Java)](/2-Medium/Network-Cabling.java) *[Loops, Distances, Medians]* [![url](url.svg)]((https://www.codingame.com/training/medium/network-cabling))
- [Othello](/2-Medium/Othello.js) *[String Manipulation]* [![url](url.svg)]((https://www.codingame.com/ide/puzzle/othello))
- [Skynet Revolution - Ep1](/2-Medium/Skynet-Revolution-ep1.js) *[Graphs, BFS]* [![url](url.svg)]((https://www.codingame.com/training/medium/skynet-revolution-episode-1))
- [Teads Sponsored Contest](/2-Medium/Teads.java) *[Graphs, BFS]* [![url](url.svg)]((https://www.codingame.com/training/medium/teads-sponsored-contest))
- [Micro Assembly](/2-Medium/Micro-Assembly.js) *[String Evaluation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/micro-assembly)
- [The Optimal Urinal Problem](/2-Medium/The-Optimal-Urinal-Problem.js) *[Memoization]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/the-optimal-urinal-problem)
- [Maximum sub-sequence](/2-Medium/Maximum-sub-sequence.js) *[Filter]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/maximum-sub-sequence)
- [Gravity Centrifuge Tuning](/2-Medium/Gravity-Centrifuge-Tuning.kt) *[BigInteger, Fibonacci]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/gravity-centrifuge-tuning)
- [Brackets, Enhanced Edition](/2-Medium/Brackets-Enhanced-Edition.js) *[Stack]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/brackets-enhanced-edition)
- [Sum of divisors](/2-Medium/Sum-of-divisors.js) *[Math]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/sum-of-divisors)
- [Bust speeding vehicles](/2-Medium/Bust-speeding-vehicles.js) *[Map]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/bust-speeding-vehicles)
- [Text formatting](/2-Medium/Text-formatting.js) *[String Manipulation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/text-formatting)
- [Snake encoding](/2-Medium/Snake-encoding.js) *[Mutation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/snake-encoding)
- [Next car license plate ?](/2-Medium/Next-car-license-plate.js) *[String Manipulation]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/next-car-license-plate)
- [Polydivisible](/2-Medium/Polydivisible-number.kt) *[BigInteger]* [![url](url.svg)](https://www.codingame.com/training/2-Medium/polydivisible-number)
- [Digit Sum Successor](/2-Medium/Digit-Sum-Successor.js) *[Math, Time-Complexity]* [![url](url.svg)](https://www.codingame.com/training/medium/digit-sum-successor)
- [Mars Lander - Episode 2](/2-Medium/Mars-Lander-Episode-2.cpp) *[Distances, Trigonometry]* [![url](url.svg)](https://www.codingame.com/training/medium/mars-lander-episode-2)
- [Brackets, Ultimate Editionש](/2-Medium/Brackets-Ultimate-Edition.js) *[Regex]* [![url](url.svg)](https://www.codingame.com/training/medium/brackets-ultimate-edition)

## Hard

- [Factorial vs Exponential](/3-Hard/Factorial-vs-Exponential.js) *[Math.log, Pre-Planning]* [![url](url.svg)](https://www.codingame.com/training/hard/factorial-vs-exponential)
- [Cryptarithm](/3-Hard/Cryptarithm.js) *[Generators, Permutation, Set, Map]* [![url](url.svg)](https://www.codingame.com/training/hard/cryptarithm)
- [Vox Codei - Episode 1](/3-Hard/Vox-Codei-Episode-1.js) *[DFS, Brute-Force, Simulation]* [![url](url.svg)](https://www.codingame.com/training/hard/vox-codei-episode-1)
- [Winamax Sponsored Contest](/3-Hard/Winamax-Sponsored-Contest.py) *[Backtracking, Recursion]* [![url](url.svg)](https://www.codingame.com/training/hard/winamax-sponsored-contest)
- [There is no Spoon - Episode 2](/3-Hard/There-is-no-Spoon-Episode-2.java) *[Backtracking, Recursion]* [![url](url.svg)](https://www.codingame.com/training/hard/there-is-no-spoon-episode-2)
- [The Greatest Number](/3-Hard/The-greatest-number.py) *[Loops, Conditions]* [![url](url.svg)](https://www.codingame.com/training/hard/the-greatest-number)
- [The Last Crusade - Episode 2](/3-Hard/The-Last-Crusade-Episode-2.cs) *[Backtracking, Pathfinding]* [![url](url.svg)](https://www.codingame.com/training/hard/the-last-crusade-episode-2)
- [The Labyrinth](/3-Hard/The-Labyrinth.py) *[BFS, Path Finding]* [![url](url.svg)](https://www.codingame.com/training/hard/the-labyrinth)
- [The Bridge](/3-Hard/The-Bridge.js) *[DFS, Backtracking]* [![url](url.svg)](https://www.codingame.com/training/hard/the-bridge-episode-2)
- [Skynet Revolution - Episode 2](/3-Hard/Skynet-Revolution-Episode-2.php) *[Graphs, Pathfinding]* [![url](url.svg)](https://www.codingame.com/training/hard/skynet-revolution-episode-2)
- [Don't Panic - Episode 2](/3-Hard/Don't-Panic-Episode-2.java) *[Pathfinding]* [![url](url.svg)](https://www.codingame.com/training/hard/don't-panic-episode-2)
- [Super Computer](/3-Hard/Super-Computer.py) *[Greedy Algorithms, Scheduling]* [![url](url.svg)](https://www.codingame.com/training/hard/super-computer)
- [Roller Coaster](/3-Hard/Roller-Coaster.py) *[Dynamic Programming, Simulation]* [![url](url.svg)](https://www.codingame.com/training/hard/roller-coaster)
- [Surface](/3-Hard/Surface.py) *[BFS, Flood Fill, Memoization, Recursion]* [![url](url.svg)](https://www.codingame.com/training/hard/surface)
- [CGX Formatter](/3-Hard/CGX-Formatter.py) *[Strings, Parsing]* [![url](url.svg)](https://www.codingame.com/training/hard/cgx-formatter)
- [Power of Thor - Episode 2](/3-Hard/Power-of-Thor-Episode-2.py) *[Barycenters, Pathfinding]* [![url](url.svg)](https://www.codingame.com/ide/puzzle/power-of-thor-episode-2)
- [TAN Network](/3-Hard/TAN-Network.py) *[Graphs, Pathfinding, Distances, Trigonometry]* [![url](url.svg)](https://www.codingame.com/training/hard/tan-network)
- [Genome Sequencing](/3-Hard/Genome-Sequencing.cpp) *[Strings, Permutations]* [![url](url.svg)](https://www.codingame.com/training/hard/genome-sequencing)
- [Bender - Episode 2](/3-Hard/Bender-Episode-2.py) *[Dynamic Programming, Memoization, Recursion, Pathfinding]* [![url](url.svg)](https://www.codingame.com/training/hard/bender-episode-2)
- [Bender - Episode 3](/3-Hard/Bender-Episode-3.kt) *[Regression Analysis]* [![url](url.svg)](https://www.codingame.com/training/hard/bender-episode-3)

## Very Hard

- [Nintendo Sponsored Contest](/3-Very_Hard/Nintendo-Sponsored-Contest.cpp) *[C++ Only, Bits, Polynomial]* [![url](url.svg)](https://www.codingame.com/training/expert/nintendo-sponsored-contest)
- [Nintendo Sponsored Contest](/3-Very_Hard/The-Resistance.js) *[Dynamic Programming, Encoding, Memoization, Recursion]* [![url](url.svg)](https://www.codingame.com/training/expert/the-resistance)
- [Mars Lander - Episode 3](/3-Very_Hard/Mars-Lander-Episode-3.java) *[Distances, Trigonometry]* [![url](url.svg)](https://www.codingame.com/training/expert/mars-lander-episode-3)
- [Music Scores](/3-Very_Hard/Music-Scores.java) *[Encoding, Image Processing, Pattern Recognition]* [![url](url.svg)](https://www.codingame.com/training/expert/music-scores)
- [Shadows of the Knight - Episode 2](/3-Very_Hard/Shadows-of-the-Knight-Episode-2.java) *[Binary Search, Intervals]* [![url](url.svg)](https://www.codingame.com/training/expert/shadows-of-the-knight-episode-2)
- [Vox Codei - Episode 2](/3-Very_Hard/Vox-Codei-Episode-2.cpp) *[DFS, Brute-Force, Pattern Recognition, Simulation]* [![url](url.svg)](https://www.codingame.com/training/expert/vox-codei-episode-2)
- [The Last Crusade - Episode 3](/3-Very_Hard/The-Last-Crusade-Episode-3.java) *[Backtracking, Pathfinding]* [![url](url.svg)](https://www.codingame.com/training/expert/the-last-crusade-episode-3)

## Integrate with Node.js

```javascript
const readFileSync = require('fs').readFileSync
const inputFile = 'lib/1.in'
const inArray = readFileSync(inputFile, 'utf8').split('\n')
const readline = () => inArray.shift()

// Use as normal readline function (Spider-Monkey) syntax;
const N = readline().split(' ').map(Number)
```

## Contributors

Dennis Vash - [profile](https://www.codingame.com/profile/82cadb4735c16364b4979205c954ec051734841).