正在测试 Mathjax 在可视化编辑器中的工作情况。

质数与因数

gcd & lcm

判断一些数的 \(gcd \times lcm\) 是否等于它们的乘积,当且仅当这些数两两互素。

因数的值域

对于任意正整数 \(x\),至多存在 \(k-1\) 个 \(x\) 的因数 \(d_i>\sqrt[k]{x}\)。

值域内质数的个数

区间 \([0,V]\) 内约有质数 \(\frac{V}{\ln V}\) 个。

唯一分解定理 & 因数和定理

对于任意正整数 \(\frac{V}{\ln V}\),存在唯一的 \({p_1,p_2,\ldots,p_n \ (p_i\in \mathbb{N_+})}\) 与 \(k_1,k_2,\ldots,k_n \ (k_i\in \mathbb{N})\) 使得 \(x=\prod_{i=1}^n p_i^{k_i}\)

其正因子个数为 \(d(n)=\prod_{i=1}^n (k_i+1)\),

其正约数之和 \(\sigma(n)=\prod_{i=1}^n \sum_{j=0}^{k_i} p_i^j\)。

图论

DAG 生成树数量

令 \(d_u\) 为点 \(u\) 的入度,则一个 DAG 的生成树数量为 \(\prod \max{d_u, 1}\)。

稠密图与稀疏图

一般地,若一个包含 \(d\) 个点的图的边数为 \(m\leq n\log n\) ,则该图属于稀疏图,否则属于稠密图。

杂项

更相减损术

令 \(d_i=a_i-a_{i-1},d_1=a_1\) ,有 \(\gcd_{i=1}^n(a_i)=\gcd_{i=1}^n(d_i)\) 。

费马小定理

对于任意正整数 \(x\) 和任意质数 \(p\),\(a^p-a\) 必定是 \(p\) 的倍数,且有 \(a^p\equiv a\pmod{p}\) 。

特别地,若 \(a\) 不是 \(p\) 的倍数,则有 \(a^{p-1}\equiv 1\pmod{p}\),\(p\)为质数,\(a\),\(p\)互质。

立方数的性质

任意一个正整数都能表示成 \(9\) 个立方数之和,即对于任意正整数 \(x\),存在 \(a_1,a_2,\ldots,a_9 \in\mathbb{N}\) 使得 \(x=\sum_{i=1}^9 a_i^3\) 立方数模 \(7\) 的余数只能是 \(0,1,6\)。

一/二/三次方和

对于任意正整数 \(n\),有 \(\sum_{i=1}^n i = \frac{n(n+1)}{2},\sum_{i=1}^n i^2 = \frac{n(n+1)(2n+1)}{6},\sum_{i=1}^n i^3 = \left(\frac{n(n+1)}{2}\right)^2\) 。

均值不等式的一般形式

\(\frac{1}{n}\sum_{k = 1}^{n} a_n \le \left(\prod_{k = 1}^{n}a_n \right)^ \frac{1}{n}\)

巴塞尔问题

\(\zeta(2)\)

\(\sum_{k = 1}^{\infty }\frac{1}{k^2} = \frac{\pi^2}{6}\quad\)

泰勒展开:

基本幂级数

\(e^x = \sum_{n=0}^{\infty}\frac{1}{n!}x^n \ (x\in(-\infty , +\infty))\)

\(\sin x = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n+1)!}x^{2n+1} \ (x\in(-\infty , +\infty))\)

\(\frac{1}{1+x}=\sum_{n=0}^{\infty}(-1)^nx^n \ (x\in(-1 , 1))\)

推广

\(\cos x = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n)!}x^{2n} \ (x\in(-\infty , +\infty))\)

\(\frac{1}{1+x^2}=\sum_{n=0}^{\infty}(-1)^nx^{2n} \ (x\in(-1 , 1))\)

\(\ln(1+x) = \sum_{n=0}^{\infty}\frac{(-1)^n}{n+1}x^{n+1}=\sum_{n=1}^{\infty}\frac{(-1)^{n+1}}{n}x^n \ (x\in(-\infty , +\infty))\)

\(a^x = e^{x\ln a} = \sum_{n=0}^{\infty}\frac{(\ln a)^n}{n!}x^n \ (x\in(-\infty , +\infty))\)

\(\arctan x = \sum_{n=0}^{\infty}\frac{(-1)^n}{2n+1}x^{2n+1} \ (x\in(-1 , 1))\)

\(ln\frac{1}{1-x} = \sum_{k = 1}^{\infty}\frac{x^k}{k} \quad (x\in(0,1))\)

一直掷 n 面骰子,直到掷出过所有面,掷骰子的期望次数为:

\(E[x]=n \cdot H_n=n \cdot \sum_{i=1}^{n}\frac{1}{i}\)

/* C++ */
#include <iostream>
#include <algorithm>
#include <climits>

struct Node
{
    char min, max;
};

const int MAXN{ 3000 + 5 };
const int MAXM{ 3000 + 5 };

Node V[MAXN]{};

int main()
{
    using namespace std;
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);

    // freopen("dict.in", "r", stdin);
    // freopen("dict.out", "w", stdout);

    fill(V, V + MAXN, Node{ CHAR_MAX, CHAR_MIN });

    int n{}, m{};
    bool tag{};
    char val{};

    (cin >> n >> m).get();
    if (n == 1) cout << 1 << endl;
    else
    {
        for (int i = 0; i < n; i++)
        {
            while ((val = cin.get()) != '\n')
            {
                V[i].min = min(V[i].min, val);
                V[i].max = max(V[i].max, val);
            }
        }
        for (int i = 0; i < n; i++)
        {
            tag = true;
            for (int j = 0; j < n; j++)
            {
                if (i == j) continue;
                if (V[i].min >= V[j].max)
                {
                    tag = false; 
                    break;
                }
            }
            cout << tag;
        }
    }
}