CF984 C. Finite or not?【数论/GCD】】的更多相关文章

UVA.12716 GCD XOR (暴力枚举 数论GCD) 题意分析 题意比较简单,求[1,n]范围内的整数队a,b(a<=b)的个数,使得 gcd(a,b) = a XOR b. 前置技能 XOR的性质 GCD 由于题目只给出一个n,我们要求对数,能做的也始终暴力枚举a,b,这样就有n^2的复杂度,由于n很大,根本过不了. 于是我们就想用到其中一些性质,如XOR 与GCD,不妨假设 a xor b = c,并且根据题意还知道, gcd(a,b) = c,也就说明c一定是a的因子,所以在枚举的…
[链接]:CF [题意]:n组样例,对于每组样例,给你三个数p q b,问你p/q在b进制下是不是一个有限小数,是的话输出Finite,否则输出Infinite. [分析]:b的过程是对q约分,那么只要b包含q全部的因子即可.考虑1/q,一定是一个小于等于1的数,考虑将小数转化为b进制的过程,每次将小数乘以b然后取整数部分,直到这个小数变成了0,也就是说如果某个小数1/q在b进制下可以被有限表示. 因此.对于在b进制下的小数p/q,只要看看q的质因子是不是都是b的质因子就可以了,显然可以用gcd…
You are given several queries. Each query consists of three integers pp, qq and bb. You need to answer whether the result of p/qp/q in notation with base bb is a finite fraction. A fraction in notation with base bb is finite if it contains finite num…
链接:http://codeforces.com/contest/984/problem/C 题意 三个数p, q, b, 求p/q在b进制下小数点后是否是有限位. 思路 题意转化为是否q|p*b^x,即看b和q有没有相同的质因子.如果用筛选质因子的话1e18的数会超时,所以每次求出b和q的gcd,再让q/gcd,如果q最后是1那么b和q拥有相同质因子,输出Finite,反之Infinite. 附代码: #include <bits/stdc++.h> typedef long long LL…
#include<cstdio> #include<string> #include<cstdlib> #include<cmath> #include<iostream> #include<cstring> #include<set> #include<queue> #include<algorithm> #include<vector> #include<map> #in…
A frog has just learned some number theory, and can't wait to show his ability to his girlfriend. Now the frog is sitting on a grid map of infinite rows and columns. Rows are numbered 1,2,⋯from the bottom, so are the columns. At first the frog is sit…
Big Number 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1722 ——每天在线,欢迎留言谈论. 题目大意: 给你两个数 n1,n2 . 然后你有一块蛋糕,提前切好,使得不管来 n1 还是 n2 个人都能够当场平均分配. 求 “提前切好” 的最小蛋糕块数. 知识点: (请无视)公式:N = a + b + gcd(a, b) : 思路: (勿无视)先份成p块,然后再拼到一起,再从原来开始的地方,将蛋糕再分成q份,中间肯定会出现完全重合的块…
gcd即最大公约数,lcm即最小公倍数. 首先给出a×b=gcd×lcm 证明:令gcd(a,b)=k,a=xk,b=yk,则a×b=x*y*k*k,而lcm=x*y*k,所以a*b=gcd*lcm. 所以求lcm可以先求gcd,而求gcd的方法就是辗转相除法,也叫做欧几里德算法,核心为gcd(m,n)=gcd(n,m%n) 证明:令 k=gcd(m,n),则 k|m 并且 k|n; 令 j=gcd(n, m mod n), 则j|n 并且 j|(m mod n); 对于m, 可以用n 表示为…
GT and numbers Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1818    Accepted Submission(s): 490 Problem Description You are given two numbers N and M. Every step you can get a new N in the wa…
题目链接 Solution 此题,用到的结论都是比较浅显的,但是,我竟然没想到反过来枚举... 只有50分... 被自己蠢哭... 结论比较浅显: 1.对于两个正整数\(a\),\(b\),设 \(gcd(a,b)=k\),则存在\(gcd(a/k,b/k)=1\). 也就是说 \(x=k_1*a_1\),\(a_0=k_2*a_1\),它们最大公约数为\(a_1\),那么要求 \(k_1\) 与 \(k_2\) 必须互质,否则它们的最大公约数会是 \(gcd(k_1,k_2)*a_1\). 2…