UOJ Logo NaCl的博客

博客

等着抢第两万评测

2022-01-18 15:31:40 By NaCl

如题

另外,造物栀橐 szd!虽然我怎能混同之韵和支韵

存档

2021-04-17 22:24:39 By NaCl

AtCoder 1975 伊吕波与俳句

有多少由 1~10 整数构成的 $n$ 长序列可分为 5 个连续段,第一第五段可为空,且另三段的各项和分别为 $x,y,z$?输入 $n (\le 40), x (\le 5), y (\le 7), z (\le 5)$,模 10 亿零 7 输出结果。

CF1546D AquaMoon 与西洋棋

给定 01 串,每次操作可交换非端点 1 两侧的字符,经有限次操作可得到多少种不同 01 串?

puts("hello, 2021")

2020-12-31 13:17:53 By NaCl

这个 OJ 的降生也已满三年。

虽万难君未死也,唯一路尔而行之。

只用等比数列求和过掉 #115

2020-12-20 00:32:56 By NaCl

分治题解见此处

显然,若 $a\mod b=c$,则 $ah\mod bh=ch$。

因此先以 $(a-1)m$ 为模数作快速幂,再除以 $(a-1)$ 即可。

#include <stdio.h>
#include <stdlib.h>

int power_mod(int base, long long int exp, int mod)
{
    long long int result = 1, b2 = base;
    while (exp) {
        if (1 & exp) result = result * b2 % mod;
        b2 = b2 * b2 % mod;
        exp >>= 1;
    }
    return (int)result;
}

int main()
{
    int a, m, m1;
    long long int k;
    scanf("%d%lld%d", &a, &k, &m);
    m1 = m * (a - 1);
    printf("%d\n",
        (m - 1 + (m1 - 1 + power_mod(a, 1 + k, m1)) % m1 / (a - 1)) % m);
    return 0;
}

祝愿++

2020-12-09 22:58:23 By NaCl

原文在此

高三选手,文化课加油,请一如既往。

高二选手,再接再厉,请走下去

高一选手,欢迎来到 OI,请坚持。

对于高二选手

请看这里

NaCl Avatar