题目: POJ1845 分析: 首先用线性筛把\(A\)分解质因数,得到: \[A=p_1^{a_1}*p_2^{a_2}...*p_n^{a_n} (p_i是质数且a_i>0) \] 则显然\(A^B\)分解质因数后为 \[A=p_1^{a_1B}*p_2^{a_2B}...*p_n^{a_nB} (p_i是质数且a_i>0) \] 接下来隆重推出约数和定理:(证明见[知识总结]约数个数定理和约数和定理及其证明) \[Sum=\prod_{i=1}^n \sum_{j=0}^{a_i}p_i…
题目链接 题意:g(x) = k * x + b.f(x) 为Fibonacci数列.求f(g(x)),从x = 1到n的数字之和sum.并对m取模. 思路:  设A = |(1, 1),(1, 0)|  sum = f(b) + f(k + b) + f(2k + b)...+f((n-1)k + b) (f(x) 为Fibonacci数列)  sum = A^b + A^(k + b) + A^(2k + b)...+ A^((n-1)k + b)  sum = A^b(1 + A^k +…
题目传送门 Sumdiv Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 26041   Accepted: 6430 Description Consider two natural numbers A and B. Let S be the sum of all natural divisors of A^B. Determine S modulo 9901 (the rest of the division of S…
正解:小学数学数论 解题报告: 传送门! 其实不难但我数学这个方面太菜了所以还是多写点儿博客趴QAQ 然后因为是英文的所以先翻译一下,,,? 大概就是说求AB的所有约数之和,对9901取膜 这个只需要知道一个小学奥数知识点就欧克了? 就,对D质因数分解成D=w1p1*w2p2*w3p3*... 那D的约数的和就(w10+w11+...+w1p1)*... 然后就可以直接对A质因数分解,直接套上面这个式子只是上限变成了w1B*w1 然后就做完了,,,? 可能晚上放代码趴QAQ?…
传送门 大意:求A^B的所有因子之和,并对其取模 9901再输出 (这题又调了半天,把n和项数弄混了QAQ) 根据算数基本定理:A=(p1^k1)*(p2^k2)*(p3^k3)*...*(pn^kn) (pi为素数) 则A的所有因子之和Sum=(1+p1+p1^2+p1^3+...p1^k1) * (1+p2+p2^2+p2^3+….p2^k2) * (1+p3+ p3^3+…+ p3^k3) * .... * (1+pn+pn^2+pn^3+...pn^kn) 那么A^B = p1^(k1*…
看完这个之后,感觉数学简直太厉害了 转载自:http://blog.csdn.net/acdreamers/article/details/7851144 今天我们学习如何有效地求表达式的值.对于这个问题,用二分解决比较好. (1)当时, (2)当时,那么有 (3)当时,那么有 代码:   #include <iostream> #include <string.h> #include <stdio.h> using namespace std; const int M…
Sumdiv 题目连接: http://poj.org/problem?id=1845 Description Consider two natural numbers A and B. Let S be the sum of all natural divisors of A^B. Determine S modulo 9901 (the rest of the division of S by 9901). Input The only line contains the two natur…
前言:想了两个小时orz,最后才想到要用约数个数定理…… ------------- 题目大意: 给定$n,q,A[1],A[2],A[3]$ 现有$A[i]=(A[i-1]+A[i-2]+A[i-3])mod q$ 求$(\sum_{i=1}^n \prod_{d|i} d^{A_i})mod10007$的值. $n\leq 300000,q,A[1],A[2],A[3]\leq 10^{16}$. ------------------------ 朴素算法是$O(n^2 \log n)$的,…
poj1845 Sumdiv 数学题 令人痛苦van分的数学题! 题意:求a^b的所有约数(包括1和它本身)之和%9901 这怎么做呀!!! 百度:约数和定理,会发现 p1^a1 * p2^a2 * ... * pn^an这个数的约数和是:(1 + p1 + p1^2 + ... + p1^a1) * (1 + p2 + ... + p2^a2) * ... * (1 + pn + ... + pn^an) 证明:由乘法原理可直接证明 然后我们对于a^b运用这个公式即可.那么对于 (1 + pi…
题目链接 题意:求 A^B的所有约数之和对9901取模后的结果. 分析: 看了小优的博客写的. 分析来自 http://blog.csdn.net/lyy289065406/article/details/6648539 (1)   整数的唯一分解定理: 任意正整数都有且只有一种方式写出其素因子的乘积表达式. A=(p1^k1)*(p2^k2)*(p3^k3)*....*(pn^kn)   其中pi均为素数 (2)   约数和公式: 对于已经分解的整数A=(p1^k1)*(p2^k2)*(p3^…