modint

package
v0.0.0-...-23e9799 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 15, 2021 License: MIT Imports: 0 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Mod1000000007 = 1000000007
	Mod998244353  = 998244353
)

Mod constants.

Variables

This section is empty.

Functions

func SetMod

func SetMod(newmod Mint)

SetMod sets the mod. It must be called first.

Types

type CombFactorial

type CombFactorial struct {
	// contains filtered or unexported fields
}

func NewCombFactorial

func NewCombFactorial(maxNum Mint) *CombFactorial

func (*CombFactorial) C

func (c *CombFactorial) C(n, r Mint) Mint

func (*CombFactorial) H

func (c *CombFactorial) H(n, r Mint) Mint

func (*CombFactorial) P

func (c *CombFactorial) P(n, r Mint) Mint

type Mint

type Mint int64

Mint treats the modular arithmetic

func (Mint) Add

func (m Mint) Add(x Mint) Mint

Add returns m+x

func (*Mint) AddAs

func (m *Mint) AddAs(x Mint) *Mint

AddAs assigns *m + x to *m and returns m

func (Mint) Div

func (m Mint) Div(x Mint) Mint

Div returns m/x

func (*Mint) DivAs

func (m *Mint) DivAs(x Mint) *Mint

DivAs assigns *m / x to *m and returns m

func (Mint) Inv

func (m Mint) Inv() Mint

Inv returns modular multiplicative inverse

func (Mint) Mod

func (m Mint) Mod() Mint

Mod returns m % mod.

func (Mint) Mul

func (m Mint) Mul(x Mint) Mint

Mul returns m*x

func (*Mint) MulAs

func (m *Mint) MulAs(x Mint) *Mint

MulAs assigns *m * x to *m and returns m

func (Mint) Pow

func (m Mint) Pow(n Mint) Mint

Pow returns m^n

func (Mint) Sub

func (m Mint) Sub(x Mint) Mint

Sub returns m-x

func (*Mint) SubAs

func (m *Mint) SubAs(x Mint) *Mint

SubAs assigns *m - x to *m and returns m

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL