/Mathball

A JavaScript library for Competitive Programming

Primary LanguageJavaScriptMIT LicenseMIT

Introduction

npm version Build Status Known Vulnerabilities codecov Codacy Badge PRs Welcome License: MIT

Mathball is a JavaScript library for competitive programming, implementing optimized algorithms for faster execution.

JavaScript was never built while keeping competitive coding in mind; let us all agree on that. Back in 1995, Brendan Eich developed JavaScript only for adding interactivity to web pages like handling a mouse click. Today, we can build servers, games, mobile apps, IoT apps and even machine learning in the browser is possible with JavaScript.

"Any application that can be written in JavaScript, will eventually be written in JavaScript." -- Atwood's Law.

Hence, I believe maybe its time for people who are well versed with this particular language to finally consider using it in the realm of competitive programming as well.

Installation

You can download the package in your working directory by simply typing in the terminal (for Mac/Linux users) or command prompt (for Windows users):

$ npm install mathball --save

Features

Examples

You can access all the functions via mathball object, M (or whatever you end up calling it) like so:

let M = require('mathball');

console.log(M.check('palindrome')(1551)); /* true */
console.log(M.check('even')(7)); /* false */
console.log(M.sum([4, 5, 9])); /* 18 */

Contribution

  1. Fork the project. 🍴
  2. Fix issues & add changes. 🔧
  3. Follow the guidelines given in CONTRIBUTING.md. 🌟
  4. Make a PR. 🔨
  5. Mission Acomplished! 🎉

Important Notice

Mathball has been selected at GirlScript Summer of Code 2019!

License

The MIT License 2019 - Priyabrata Biswas.