欧拉函数
林黛玉倒拔垂杨柳
你我最后也平凡到自命不凡
展开
-
一些数论模板
一. 欧几里得算法 时间复杂度 O(logn) 1.求两个数的最大公约数 int gcd(int a, int b){ return b ? gcd(b, a % b) : a; } 2.求两个数的最小公倍数 int gcd(int a, int b){ return b ? gcd(b, a % b) : a; } int lcm(int a,int b){ return a/gcd(a,b)*b; //防止越界 } 二. 扩展欧几里得算法 裴蜀定理:若 a,b 是整数,且 g原创 2020-07-20 11:07:13 · 116 阅读 · 0 评论 -
2018蓝桥杯B组国赛第六题 矩阵求和(数论/欧拉函数)
矩阵求和 经过重重笔试面试的考验,小明成功进入 Macrohard 公司工作。 今天小明的任务是填满这么一张表: 表有 n 行 n 列,行和列的编号都从1算起。 其中第 i 行第 j 个元素的值是 gcd(i, j)的平方, gcd 表示最大公约数,以下是这个表的前四行的前四列: 1 1 1 1 1 4 1 4 1 1 9 1 1 4 1 16 小明突然冒出一个奇怪的想法,他想知道这张表中所有元素的和。 由于表过于庞大,他希望借助计算机的力量。 「输入格式」 一行一个正整数 n 意义见原创 2020-07-20 10:48:42 · 677 阅读 · 0 评论