Codeforces 1062B Math(质因数分解)】的更多相关文章

题意: 给一个数n,可以将它乘任意数,或者开方,问你能得到的最小数是多少,并给出最小操作次数 思路: 能将这个数变小的操作只能是开方,所以构成的最小数一定是 $n = p_1*p_2*p_3*\dots *p_m$ 其中$p_i$为不同的质数 由唯一分解定理,我们需要把初始的n通过乘法变成可以(多次)开方成上数的形式 不引入多余的质因子,就是最小的数 一次乘法(如果需要乘的话)+数次开方就是最小操作次数 代码: #include<iostream> #include<cstdio>…
题意 https://vjudge.net/problem/CodeForces-1228C 首先先介绍一些涉及到的定义: 定义prime(x)表示x的质因子集合.举例来说,prime(140)={2,5,7},prime(169)={13}. 定义g(x,p)表示存在一个最大的k∈N∗,使得x可以被p^k整除,那么g(x, p) = p^k.举例来说: g(45, 3) = 9 (45可以被3^2 = 9整除但是不能被3^3=27整除) g(63, 7) = 7 (63可以被7^1 = 7整除…
D. Soldier and Number Game time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard output Two soldiers are playing a game. At the beginning first of them chooses a positive integer n and gives it to the…
题目大意 给定一个数的质因子表达式,要求你计算机它的值,并减一,再对这个值进行质因数分解,输出表达式 题解 预处理一下,线性筛法筛下素数,然后求出值来之后再用筛选出的素数去分解....其实主要就是字符串处理... 代码: #include <stdio.h> #include <string.h> #include <math.h> #define MAXN 10000 ]; ],cnt=; ]; void get_prime() { ; memset(check,fa…
n<=10^6 m<=10^6 p=2^32 用unsigned int 可以避免取模 我写的SB超时 阶乘分解代码 #include <cstdio> #include <cstdlib> #include <cmath> #include <cstring> #include <ctime> #include <algorithm> #include <iostream> #include <sstr…
题目:http://codeforces.com/contest/757/problem/E f0[n]=2^m,其中m是n的质因子个数(种类数).大概是一种质因数只能放在 d 或 n/d 两者之一. 然后应该发现因为 f0 是积性的,所以 fr 也是积性的!因为是卷积得来的. 这样就能把每个质因数分开.对于每种质因数考虑 fr 的转移,则 f [ r ][ p^k ] = sigma(i:0~k) ( f [ r-1 ][ p^i ] ) . 应该发现 f0 里每种质因数的值只和其次数有关,从…
题目:http://codeforces.com/contest/757/problem/E 首先,f0(n)=2m,其中 m 是 n 的质因数的种类数: 而且 因为这个函数和1卷积,所以是一个积性函数,就可以每个质因子单独考虑: 而 f0(pq) = 2,对于每个质因子都一样! 所以可以 DP 预处理 而fr(n) = fr(p1e1) * fr(p2e2) * ... * fr(pqeq)fr(n) = dp[r][e1] * dp[r][e2] * ... * dp[r][eq] 学到了质…
题意: 考虑所有满足2 ≤ a ≤ 5和2 ≤ b ≤ 5的整数组合生成的幂ab: 22=4, 23=8, 24=16, 25=3232=9, 33=27, 34=81, 35=24342=16, 43=64, 44=256, 45=102452=25, 53=125, 54=625, 55=3125 如果把这些幂按照大小排列并去重,我们得到以下由15个不同的项组成的序列: 4, 8, 9, 16, 25, 27, 32, 64, 81, 125, 243, 256, 625, 1024, 31…
n!质因数分解后P的个数=n/p+n/(p*p)+n/(p*p*p)+......直到n<p*p*p*...*p //主要代码,就这么点东西,数学真是厉害啊!幸亏我早早的就退了数学2333 do { n/=m; w+=n; }while(n);…
43:质因数分解 总时间限制:  1000ms 内存限制:  65536kB 描述 已知正整数 n 是两个不同的质数的乘积,试求出较大的那个质数. 输入 输入只有一行,包含一个正整数 n. 对于60%的数据,6 ≤ n ≤ 1000.对于100%的数据,6 ≤ n ≤ 2*10^9. 输出 输出只有一行,包含一个正整数 p,即较大的那个质数. 样例输入 21 样例输出 7 来源 NOIP2012复赛 普及组 第一题 思路: 智商呐!! 来,上代码: #include<cmath> #inclu…