Types
SemiRelaxedConvolution[T] = object fixed: seq[T] online, product: seq[T]
- Source Edit
Procs
proc add[T](self: var SemiRelaxedConvolution[T]; value: T): T
- オンライン側へ次の係数を追加し、その次数の積の係数を返す。 Source Edit
proc append[T](self: var SemiRelaxedConvolution[T]; value: T): T
- Source Edit
proc coefficients[T](self: SemiRelaxedConvolution[T]): seq[T]
- 現在までに確定した積の係数を返す。 Source Edit
proc get[T](self: var SemiRelaxedConvolution[T]; value: T): T
- Source Edit
proc initSemiRelaxedConvolution[T: BarrettModint or MontgomeryModint]( fixed: seq[T]): SemiRelaxedConvolution[T]
- 左側をfixedに固定した逐次畳み込みを初期化する。 NTTが利用できる場合、N項追加する計算量はO(N log^2 N)となる。 Source Edit
proc len[T](self: SemiRelaxedConvolution[T]): int
- Source Edit