Asosiy tarkibga o‘tish

O‘rganish

Kirish
Qo‘llanma

Qo‘llanma · Dasturlash

number-theory

1 ta masala Masalalar ro‘yxatida

Nazariya

Bo‘luvchilar — O(√n)

divs = []
i = 1
while i * i <= n:
    if n % i == 0:
        divs.append(i)
        if i != n // i:
            divs.append(n // i)
    i += 1

Tub sonlar — Eratosfen g‘alviri, O(n log log n)

is_prime = [True] * (n + 1)
is_prime[0] = is_prime[1] = False
for i in range(2, int(n ** 0.5) + 1):
    if is_prime[i]:
        is_prime[i * i::i] = [False] * len(range(i * i, n + 1, i))

EKUB va EKUK

from math import gcd
lcm = a // gcd(a, b) * b         # avval bo‘lib, keyin ko‘paytiring — toshib ketmaydi

Modul bo‘yicha arifmetika

Javob «10⁹ + 7 ga bo‘lgandagi qoldiq» bo‘lsa, har qo‘shish va ko‘paytirishdan keyin % MOD qiling. Daraja: pow(a, n, MOD) — O(log n). Bo‘lish o‘rniga teskari element: pow(b, MOD - 2, MOD) (MOD tub bo‘lsa).

Easy

Shu mavzu kirgan kurslar

Menyu

Ko‘rinish

Klaviatura yorliqlari

Ctrl K yoki /
Qidirish va buyruqlar
g h
Bosh sahifa
g p
Masalalar
g c
Musobaqalar
g r
Reyting
Ctrl Enter
Masala sahifasida — yechimni yuborish
?
Shu oyna