首页
比赛
tracker
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
来点gcd
6条解析
开通博客写题解
千雪水岷
发表于 2025-11-20 20:38:47
//头文件,当然你用万能头也可以 #include <iostream> #include <vector> #include <algorithm> //gcd函数实现 int gcd(int x, int y) { //根据欧几里得算法,得知gcd(
展开全文
Myaljk
发表于 2022-03-11 23:51:07
题意:是否存在一个子集使得子集中所有元素的gcdgcdgcd为xx\\x 有一个需要注意的事情是:如果给定xxx是2,那么那个子集中的所有数都应该是2的倍数,有了这个思想,我们就可以利用调和级数On的遍历x取1~n时存在的gcd。 vis[i]:标记iii是否是给定的nnn个数内,是为truetru
展开全文
ddb酱
发表于 2025-11-20 13:03:12
#include <bits/stdc++.h> using namespace std; #define endl "\n" #define all(a) a.begin(), a.end() #define yes cout<<"YES&qu
展开全文
此在Dasein
发表于 2025-11-20 04:08:12
算法分析 一、算法思想 该问题的核心是利用数论性质将子集存在性问题转化为整体GCD判定问题。 关键数学性质:对于询问值 x,令 Mₓ 表示原多重集 S 中所有 x 的倍数的集合。则存在 S 的非空子集使得其 GCD 等于 x,当且仅当 Mₓ 中所有元素的整体 GCD 恰好等于 x。 证明: 充分性
展开全文
Kato_Shoko
发表于 2025-11-20 10:53:35
#include <bits/stdc++.h> #define il inline using namespace std; using ll = long long; using ull = unsigned long long; using int128=__int128_t;
展开全文
DPsans
发表于 2025-11-20 11:42:53
·首先,理解一下题意,给定一个序列,对每个查询,输出该序列是否存在子序列的gcd(最大公约数)为查询所给的数。·我们知道,对最开始的序列中的重复的数,其对gcd其实没有影响(对与其相等的数,gcd就是它自己,对与其不等的数,gcd也都是一样的);·所以我们可以先把序列去重(以题上的{2, 2, 6,
展开全文
查看本题
查看本题讨论
相关比赛
11217-牛客小白月赛40
进入比赛
22198-牛客小白月赛40内测
进入比赛
31443-2022年嘉应学院蓝桥杯训练赛(6)
进入比赛
49585-私人
进入比赛
54083-河南农业大学2023春蓝桥杯赛前训练第六场
进入比赛
等你来战
查看全部
牛客周赛 Round 119
报名截止时间:2025-11-23 21:00
第十七届北京信息科技大学程序设计竞赛(校外同步赛)
报名截止时间:2025-11-26 17:00
2025年冬第十届河北工业大学程序设计校赛
报名截止时间:2025-11-28 21:00
牛客小白月赛124
报名截止时间:2025-11-28 21:00
2025年广东工业大学新生赛(同步赛)
报名截止时间:2025-11-30 18:30
牛客周赛 Round 120
报名截止时间:2025-11-30 21:00
辽宁科技大学第二十一届ACM队纳新赛
报名截止时间:2025-12-07 14:00
华中农业大学第十五届程序设计竞赛(新生赛)同步赛
报名截止时间:2025-12-07 15:30
2026牛客寒假算法基础集训营1
报名截止时间:2026-02-03 18:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题