Skip to main content

A Python Package for Competitive Programming

Project description

Fast Cp

A Python Library that contains various functions to make Competitive Programming easy. This Package includes pre-defined functions that are quite useful in Competitive Programming.

Purpose of Package

  • The main purpose of this package is to provide various functions that are helpful for Competitive Programming.

Features

  • Collections of fastcp
    • Collections of arrays
      • Unique
      • Subarr
      • Subseq
      • Freq
      • Length
    • Collections of strings
      • VowelCount
      • Freq
      • Substr
      • Subseq
    • Collections of bitMan
      • Binary
      • Hexa
      • Octal
      • Toggle
      • CountSetBits
      • BinToDecimal
      • OctToDecimal
      • HexToDecimal
    • Collections of math
      • Product
      • Sieve
      • IsPrime
    • Collections of search
      • Find
      • LowerBound
      • UpperBound
    • Collections of sorting
      • Sort
      • SortDict
      • SortDictValues
    • Collections of collections
      • MultMap
    • Collections of trees
      • Create
      • Inorder
      • Preorder
      • Postorder
      • Levelorder

Getting Started

This package can be found on PyPi. Hence you can install it using pip

Installation

pip install fastcp

Usage

importing all sub-packages from fastcp

>>> from fastcp import *
>>> subsequences = arrays.Subseq([1,2,3,4,5])

importing a single sub-package from fastcp

>>> from fastcp import bitMan
>>> toggled_number = bitMan.Toggle(123)

Examples

>>> from fastcp import arrays

>>> arrays.Freq([1,1,2,2,2,3])
{1:2, 2:3, 3:1}
>>> from fastcp import strings

>>> strings.Substr("python")
['python', 'ython', 'thon', 'hon', 'on', 'n']

>>> strings.Subseq("Pypi")
['Pypi', 'Pyp', 'Pyi', 'Py', 'Ppi', 'Pp', 'Pi', 'P', 'ypi', 'yp', 'yi', 'y', 'pi', 'p', 'i', '']
  • New Libraries: (v.1.0.2)
    • sorting
    • collections
>>> from fastcp import sorting
>>> # Sort function at O(N) Complexity

>>> dict = {10: 1, 8: 2, 1: 3, 4: 4}

>>> print(sorting.SortDict(dict))
{1: 3, 4: 4, 8: 2, 10: 1}

>>> print(sorting.SortDict(dict, True))
{10: 1, 8: 2, 4: 4, 1: 3}


>>> from fastcp import collections

>>> d = collections.MultMap(0)
>>> # creates a Multi-Dictionary with default value as Int (0);
>>> d[0][0]
0

>>> d = collections.MultMap([])
>>> # creates a Multi-Dictionary with default value as List ([]);
>>> d[0][0]
[]
>>> d[0][0].append(20)
>>> d[0][0]
[20]
>>> from fastcp import trees
>>> root = trees.Create(10)
>>> root.left = Create(5)
>>> root.right = Create(20)
>>> trees.Inorder(root)
[5, 10, 20]
>>> trees.Preorder(root)
[10, 5, 20]
>>> trees.Postorder(root)
[5, 20, 10]
>>> trees.Levelorder(root)
[[10], [5, 20]]

Author

Avinash Doddi [https://github.com/avinash-doddi]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fastcp-1.0.3.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

fastcp-1.0.3-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file fastcp-1.0.3.tar.gz.

File metadata

  • Download URL: fastcp-1.0.3.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.0

File hashes

Hashes for fastcp-1.0.3.tar.gz
Algorithm Hash digest
SHA256 5d6f7409bf02581679904ab548405427966e20a0a08a74de7a2978b861575346
MD5 af452a92e7e512fa9ebcb200e6565f5c
BLAKE2b-256 49dae9188092e375632114f1b0cdc981eb8a838f3b48120f4e00ff53619f1090

See more details on using hashes here.

File details

Details for the file fastcp-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: fastcp-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.0

File hashes

Hashes for fastcp-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 54166b3e635411d072f0fa6a2e1db280779016de123e1af8d90096153a87acf3
MD5 52ebe0187ca3505b5da0a0b9c1503ef6
BLAKE2b-256 7fcb1c705b3deac8e8c39c8816427fa4a3932931715bca357ad2ce348da4a873

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page