UOJ 48 次最大公约数】的更多相关文章

次最大公约数 = gcd / 其中一个数质因数中最小的. gcd(42,12) = 6;    div(42) = 2*3*7   div(12) = 2^2*3 sgcd(42,12) = 6 / 2 = 3; 之前素数筛选,分解质因数总是找模板,整理后就用红书上的模板了. #include <bits/stdc++.h> using namespace std; typedef long long ll; ll gcd(ll a,ll b) { ? a : gcd(b,a%b); } ll…
[UOJ#48][UR #3]核聚变反应强度(质因数分解) 题面 UOJ 题解 答案一定是\(gcd\)除掉\(gcd\)的最小质因子. 而\(gcd\)的最小值因子一定是\(a_1\)的质因子. 所以预处理出\(a_1\)的质因子,个数不会超过\(\log(a)\)个,然后就可以直接暴力了. 时间复杂度\(O(n\log(a)+\sqrt a)\) #include<iostream> #include<cstdio> #include<algorithm> usin…
[UR #3]核聚变反应强度 Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://uoj.ac/problem/48 Description 著名核物理专家 Picks 提出了核聚变特征值这一重要概念. 核聚变特征值分别为 x 和 y 的两个原子进行核聚变,能产生数值为 sgcd(x,y) 的核聚变反应强度. 其中, sgcd(x,y) 表示 x 和 y 的次大公约数,即能同时整除 x,y 的正整数中第二大的数.如果次大公约数不存在则说明无法核…
题目描述 给出一个长度为 $n$ 的数列 $a$ ,求 $a_1$ 分别与 $a_1...a_n$ 的次大公约数.不存在则输出-1. 输入 第一行一个正整数 $n$ . 第二行 $n$ 个用空格隔开的正整数,第 $i$ 个为 $a_i$ . $n\le 10^5,a_i\le 10^{12}$ 输出 一行 $n$ 个用空格隔开的整数,第 $i$ 个表示 $\text{sgcd}(a_1,a_i)$ . 样例输入 412450 1 2 450 样例输出 6225 -1 1 75 题解 数论 次大公…
题目大意:给你一串数$a_i$,求$sgcd(a_1,a_i)$,$sgcd(x,y)$表示$x,y$的次大公约数,若没有,则为$-1$ 题解:即求最大公约数的最大约数,把$a_1$分解质因数,求出最大公约数,在判断是否可以被整除就行了 卡点:无 C++ Code: #include <cstdio> #include <vector> #define maxn 100010 std::vector<long long> v; int n, sz; long long…
题面 这是一道标准的单调栈的题目,但是由于题目的个例性,该题对于前后两数等于的情况并无额外处理,so也确实是让这题简单了一点 也没什么好说的直接上代码吧 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using namespace std; const int N=500005; int n; long long…
1 问题描述 Compute the Greatest Common Divisor of Two Integers using Sieve of Eratosthenes. 翻译:使用埃拉托色尼筛选法计算两个整数的最大公约数.(PS:最大公约数也称最大公因数,指两个或多个整数共有约数中最大的一个) 2 解决方案 2.1 埃拉托色尼筛选法原理简介 引用自百度百科: 埃拉托色尼筛选法(the Sieve of Eratosthenes)简称埃氏筛法,是古希腊数学家埃拉托色尼(Eratosthene…
bzoj2616 放一个车的时候相当于剪掉棋盘的一行,于是就可以转移了,中间状态转移dp套dp,推一下即可 bzoj2878 环套树期望dp 手推一下递推式即可 bzoj3295 树状数组套权值线段树 NOI2002贪吃的九头龙 多叉转二叉 水过 bzoj1495 方程就是f[i,j,k]表示以i为根,叶节点有j个A,所有的父节点状态为k的最佳值,然后方程就出来了f[i,j,k] = min(Σf[son,j1,k1]),其中Σj1=j,k1为k加上i的状态.然后把后两维用一个数压一下保存就好了…
目录 Day006:函数和模块的使用 1.函数的作用 2.定义函数 2.1 语法 2.2 实例 2.3 函数的调用 4.函数的参数 4.1 必须参数 4.2 关键字参数 4.3 默认参数 4.4 不定长参数 5.参数传递 5.1 可更改(muable)和不可更改(inmuable)对象 5.3 传可变对象实例 6.匿名函数 6.1 语法 7.return语句 8.变量作用域 8.1 全局变量和局部变量 8.2 global 和 nonlocal关键字 9. 用模块管理函数 10.练习 10.1…
1 问题描述 Compute the Greatest Common Divisor of Two Integers using Sieve of Eratosthenes. 翻译:使用埃拉托色尼筛选法计算两个整数的最大公约数.(PS:最大公约数也称最大公因数,指两个或多个整数共有约数中最大的一个) 2 解决方案 2.1 埃拉托色尼筛选法原理简介 引用自百度百科: 埃拉托色尼筛选法(the Sieve of Eratosthenes)简称埃氏筛法,是古希腊数学家埃拉托色尼(Eratosthene…