AcWing 869. 试除法求约数】的更多相关文章

#include <iostream> #include <algorithm> #include <vector> using namespace std; vector<int> get_divisors(int x) { vector<int> res; ; i <= x / i; i ++ ) ) { res.push_back(i); if (i != x / i) res.push_back(x / i); } sort(res…
#include <iostream> #include <algorithm> using namespace std; bool is_prime(int x) { ) return false; ; i <= x / i; i ++ ) ) return false; return true; } int main() { int n; cin >> n; while (n -- ) { int x; cin >> x; if (is_prime…
★引子 前天,俺在<俺的招聘经验[4]:通过笔试答题能看出啥?>一文,以"求质数"作为例子,介绍了一些考察应聘者的经验.由于本文没有政治敏感内容,顺便就转贴到俺在CSDN的镜像博客. 昨天,某个CSDN网友在留言中写道: 老实说,这个程序并不好写,除非你背过这段代码如果只在纸上让别人写程序,很多人都会出错但是如果给一台电脑,大多数人都会把这个程序调试正确出这个题目没啥意义只能让别人觉得你出题水平低 首先,这位网友看帖可能不太仔细.俺在文中已经专门强调过了,评判笔试答题,&q…
★引子 前天,俺在<俺的招聘经验[4]:通过笔试答题能看出啥?>一文,以"求质数"作为例子,介绍了一些考察应聘者的经验.由于本文没有政治敏感内容,顺便就转贴到俺在CSDN的镜像博客. 昨天,某个CSDN网友在留言中写道: 老实说,这个程序并不好写,除非你背过这段代码如果只在纸上让别人写程序,很多人都会出错但是如果给一台电脑,大多数人都会把这个程序调试正确出这个题目没啥意义只能让别人觉得你出题水平低 首先,这位网友看帖可能不太仔细.俺在文中已经专门强调过了,评判笔试答题,&q…
链接:传送门 题意:给出一个整数 n ,输出整数 n 的分解成若干个素因子的方案 思路:经典的整数分解题目,这里采用试除法 和 用筛法改造后的试除法 对正整数 n 进行分解 方法一:试除法对正整数 n 进行分解 /************************************************************************* > File Name: hdu1164.cpp > Author: WArobot > Blog: http://www.cnb…
399. 除法求值 给出方程式 A / B = k, 其中 A 和 B 均为代表字符串的变量, k 是一个浮点型数字.根据已知方程式求解问题,并返回计算结果.如果结果不存在,则返回 -1.0. 示例 : 给定 a / b = 2.0, b / c = 3.0 问题: a / c = ?, b / a = ?, a / e = ?, a / a = ?, x / x = ? 返回 [6.0, 0.5, -1.0, 1.0, -1.0 ] 输入为: vector<pair<string, stri…
题意:求满足条件GCD(N,M) = N XOR M的M的个数 sol:和uva那题挺像的.若gcd(a,b)=a xor b=c,则b=a-c 暴力枚举N的所有约数K,令M=NxorK,再判断gcd(N,M)是不是等于K. 注意枚举约数时传统方法是O(N)的,会完蛋 有个O(sqrt(N))的方法: 注意一个性质:若n%i==0,则有n%(n/i)=0 所以可以这样: for (int i=1;i*i<=N;i++) if (N%i==0) { //i是约数,N/i也是约数 balabalab…
给出n个数a1,a2...an,定义函数 f[i]=j,(i<j),表示aj mod ai=0 的最小j,其中j大于i,如果不存在这样的数,则f[i]=0 求n个数所有f[]值的和 先用筛法o(nlogn)求出每个数的约数 然后每读入一个数x,先找出所有的约数,再看看之前有没有出现过这些约数. 这个回看的过程可以用一个数组维护. 维护watch[],watch[aj]=j 表示aj还没有找到函数值,如果aj是x的约数,那么说明aj的函数值为x的位置. #include<cstdio> #…
谁是英雄 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 十个数学家(编号0-9)乘气球飞行在太平洋上空.当横越赤道时,他们决定庆祝一下这一壮举.于是他们开了一瓶香槟.不幸 的是,软木塞在气球上打了一个洞,氢气泄漏,气球开始下降,眼看就要落入海中,所有人将要被鲨鱼吃掉. 但是尚有一线生机--若其中一人牺牲自己跳下去的话,那他的朋友们还能多活一会儿.但仍然有一个问题存在--谁 跳下去?所以他们想了一个非常公平的办法来解决这个问题--首先,每人写一个整数ai:然后计 算…
题目:输入两个正整数m和n,求其最大公约数和最小公倍数. 程序分析:利用辗除法. package Studytest; import java.util.Scanner; public class Prog6 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入第一个数"); int n = sc.nextInt(); System.…
Equations are given in the format A / B = k, where A and B are variables represented as strings, and k is a real number (floating point number). Given some queries, return the answers. If the answer does not exist, return -1.0. Example:Given a / b =…
就是输出n时,莫比乌斯函数的值.直接将n唯一分解即可. 思路:筛出105以内的素数,因为109开方,105就差不多.当一个大数还没有被1000个素数分解,那么这个数基本上可以认为是素数(为合数为小概率了).使用欧拉筛筛出105以内的素数,然后枚举素数试除即可 ac代码: #include<cstdio> #include<cstring> #define maxn int(1e5) #define ll long long int prime[maxn]; bool vis[max…
题目链接:https://cn.vjudge.net/problem/HDU-1215 题意 中文题,自己去看吧,懒得写:) 思路 \[ Ans=\prod \sum p_i^j \] 唯一分解定理 关键在于求因子了,模版到时候整理 提交过程 AC 代码 #include <cstdio> #include <cstring> #include <algorithm> using namespace std; int factors[200][2], fsize; vo…
//M看成背包容量,把每个数看成一个物品,Ai看成是体积 //目标:求总体积恰好为M的方案数目 #include <iostream> using namespace std; ; int n, m; int f[N];//f[i][j]表示从前i个物品种选,和位j的方案数目 //然后把[i]这一层优化掉, int main() { cin >> n >> m; f[] = ; ; i < n; i ++ ) { int v; cin >> v; fo…
https://www.acwing.com/problem/content/796/ #include<bits/stdc++.h> using namespace std; // A/b 商是c 余数是r vector<int> div(vector<int> &A, int b,int &r) //r是引用 { vector<int>C; //商 r=;//余数 ;i>=;i--) //除法是从最高位开始 { r=r*+A[i];…
http://acm.hdu.edu.cn/showproblem.php?pid=1215 题意:求解小于n的所有因子和 利用数论的唯一分解定理. 若n = p1^e1 * p2^e2 * ……*pn^en(任何一个数都可以分解成素数乘积) 则n的因子个数为  (1+e1)(1+e2)……(1+en) n的各个因子的和为(1+p1+p1^2+……+p1^e1)(1+p2+p2^2+……+p2^e2)……(1+pn+pn^2+……+pn^en) (把式子化简就知道为什么了) ac代码: #inc…
#include<bits/stdc++.h> using namespace std; #define ll long long #define maxn 1000005 bool vis[maxn]; int m,primes[maxn]; void init(){ ;i<maxn;i++){ if(!vis[i]) primes[++m]=i; ;j<=m;j++){ if(primes[j]*i>=maxn)break; vis[primes[j]*i]=; )bre…
//稀疏图 #include <cstring> #include <iostream> #include <algorithm> using namespace std; , INF = 0x3f3f3f3f; int n, m; int g[N][N]; int dist[N]; bool st[N]; int prim() { memset(dist, 0x3f, sizeof dist);//先初始化为正无穷 ;//权重 ; i < n; i ++ ) {…
//稠密图 #include <cstring> #include <iostream> #include <algorithm> using namespace std; , M = , INF = 0x3f3f3f3f; int n, m; int p[N]; struct Edge { int a, b, w; bool operator< (const Edge &W)const { return w < W.w; } } edges[M];…
还是挺难的吧......勉强看懂调了半天 首先表达式可以写成 8(10^x -1)/9,题意为求一个最小的x使L | 8(10^x -1)/9 设d=gcd(L,8) L | 8(10^x -1)/9 <=>9L | 8(10^x -1) <=>9L/d | 10^x -1 (因为 9L/d 和 8/d 互质了 所以 9L/d 能整除(8/d)*(10^x-1)和 8/d 无关,所以可以去掉) <=>10^x 同余 1(mod 9L/d) 引理: 若a,n互质,则满足1…
题目链接 真TM是神奇数论公式. 注明:如无特殊说明我们的除法都是整数除法,向下取整的那种. 首先有个定理叫$d(ij)=\sum\limits_{i|n}{}\sum\limits_{j|m}{}(gcd(i,j)==1)$ 证明……我不会证qwq,可以看这个链接 所以原式$\sum\limits_{i=1}{n}\sum\limits_{j=1}{m}d(ij)$ =$\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{m}\sum\limits_{k=1}^{i…
咕咕咕.按上传时间升序排列. //树的重心 void dfs(int x) { v[x]=1; size[x]=1; int max_part=0; for(int i=hed[x];i;i=nxt[i]) { int y=ver[i]; if(v[y]) continue; dfs(y); size[x]+=size[y]; max_part=max(max_part,size[y]); } max_part=max(max_part,n-size[x]); if(max_part<ans)…
Description jyy就一直想着尽快回地球,可惜他飞船的燃料不够了. 有一天他又去向火星人要燃料,这次火星人答应了,要jyy用飞船上的瓶子来换.jyy 的飞船上共有 N个瓶子(1<=N<=1000) ,经过协商,火星人只要其中的K 个 . jyy 将 K个瓶子交给火星人之后,火星人用它们装一些燃料给 jyy.所有的瓶子都没有刻度,只 在瓶口标注了容量,第i个瓶子的容量为Vi(Vi 为整数,并且满足1<=Vi<=1000000000 ) . 火星人比较吝啬,他们并不会把所有的…
//约数 /* 求n的正约数集合:试除法 复杂度:O(sqrt(n)) 原理:扫描[1,sqrt(N)],尝试d能否整除n,若能,则N/d也能 */ ],m=; ;i*i<=n;i++){ ){ factor[++m]=i; if(i!=n/i) factor[++m]=n/i; } } /* 求[1,n]每个数的正约数集合:倍数法 复杂度:O(nlogn) 原理:对于每个数d,[1,n]中以d为约数的数就是d的倍数 */ vector<]; ;i<=n;i++) ;i*j<=n;…
一.求算术平方根 a=0 x=int(raw_input('Enter a number:')) if x >= 0: while a*a < x: a = a + 1 if a*a != x: print x,'is not a perfect square' else: print a else: print x,'is a negative number' 二.求约数 方法一: divisor = [ ] x=int(raw_input('Enter a number:')) i=1 w…
(首先要%miskcoo,这位dalao写的博客(这里)实在是太强啦qwq大部分多项式相关的知识都是从这位dalao博客里面学的,下面这篇东西是自己对其博客学习后的一些总结和想法,大部分是按照其博客里面的思路来分析的,并添加了一些自己的理解) 多项式求逆(元) 定义 对于一个多项式\(A(x)\),如果存在一个多项式\(B(x)\),满足\(B(x)\)的次数小于等于\(A(x)\)且\(A(x)B(x)\equiv 1(mod\ x^n)\),那么我们称\(B(x)\)为\(A(x)\)在模\…
最近应老延的要求再刷<算法进阶指南>(不得不说这本书不错)...这道题花费了较长时间~(当然也因为我太弱了)所以就写个比较易懂的题解啦~ 原题链接:POJ1845 翻译版题目(其实是AcWing上的): 假设现在有两个自然数A和B,S是AB的所有约数之和. 请你求出S mod 9901的值是多少. 输入格式 在一行中输入用空格隔开的两个整数A和B. 输出格式 输出一个整数,代表S mod 9901的值. 数据范围 0≤A,B≤5×107 输入样例: 2 3 输出样例: 15 注意: A和B不会…
本文是对 LeetCode Count Primes 解法的探讨. 题目: Count the number of prime numbers less than a non-negative number, n. 尽管题目并没有要我们写一个最优的算法,但是身为一个程序员,优化应该是一种习惯,在编程的过程中,随着思考进行优化.只要求我们满足给定的时间和空间即可. 如果你只能想出一个最简单的方法,难道你会有什么竞争力吗? 穷举 最开始我用的就是这个方法,可以说这是最简单的一种方法了,而且最开始,我…
约数 一.概念 约数,又称因数.整数a除以整数b(b≠0) 除得的商正好是整数而没有余数,我们就说a能被b整除,或b能整除a.a称为b的倍数,b称为a的约数. 二.性质 1.整数唯一分解 1)定义 对于任意一个正整数N,都有 N=p1c1*p2c2...pmcm,其中p为质数. 2)正约数集合 ={p1b1*p2b2*...pmbm|0<=bi<=ci}   3)正约数的和 f(n)=(p1^0+p1^1+p1^2+…p1^a1)(p2^0+p2^1+p2^2+…p2^a2)…(pk^0+pk…
原文地址:http://blog.csdn.net/program_think/article/details/7032600/ ★引子 前天,俺在<俺的招聘经验[4]:通过笔试答题能看出啥?>一文,以"求质数"作为例子,介绍了一些考察应聘者的经验.由于本文没有政治敏感内容,顺便就转贴到俺在CSDN的镜像博客. 昨天,某个CSDN网友在留言中写道: 老实说,这个程序并不好写,除非你背过这段代码如果只在纸上让别人写程序,很多人都会出错但是如果给一台电脑,大多数人都会把这个程序…