GithubHelp home page GithubHelp logo

kostaskoyias / foo-bar Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 289 KB

Solutions to google foo.bar challenge.

Java 99.20% Python 0.80%
google dynamic-programming edmonds-karp-algorithm graph-theory flow-networks bidirectional-search bellma-ford graph-search java

foo-bar's Introduction

foo-bar

These are my solutions to the foo-bar challenge invitation I got from G o o g l e.

Repo structure

For all problems solved, standard Java 8 was used.
Each level consists of 1 to 3 challenges, each of whom has it's own package under src of the form foo.bar.l${level_number}.c${challenge_number}. Challenge number might be omitted in case it is the only one in that level.

After cloning/forking, please build the project with Gradle as follows

./gradlew build

Then, to test a particular problem, for example l2.c2, please type

./gradlew test --tests foo.bar.l2.c2.solution.SolutionTest

In each challenge, Google provides 2-3 out of the 5-10 total test cases as examples. The rest of them are hidden.
For each challenge lx.cy

  • description can be found under src/main/foo/bar/lx/cy/readme.txt
  • solution can be found under src/main/foo/bar/lx/cy/solution/Solution.java and
  • test cases can be found under src/test/foo/bar/lx/cy/solution/SolutionTest.java

Challenge structure

Based on what I have read until know, this is how the whole challenge is structured.

Level Challenge Time limit for each challenge Reward after completion
1 1 2 days -
2 2 3 days Friend referral link1
3 3 4 days Google Interview2
4 2 15 days Another friend referral link
5 1 22 days -
  1. A referral link allows the person you send it to, to enter foobar.
  2. You are asked to fill out your personal info, if you wish, then a Google recruiter will contact you soon.

Challenges

Note that the readme files were slightly simplified while solving the corresponding challenge.

End message

After completing all challenges, Google will give you a base64 encoded message. The key to decode it is your foobar username. A script was added that prints this message decoded.

More information

To learn more about Google's foobar challenge, check out some of the links below:

  1. medium
  2. freeCodeCamp
  3. YouTube

foo-bar's People

Contributors

kostaskoyias avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.