当前位置: 首页 > wzjs >正文

想做一个网站怎么做网络服务提供商

想做一个网站怎么做,网络服务提供商,秦皇岛公司做网站,做cs开箱网站违法吗目录 题目算法标签: 数论, 最大公约数, 最小公倍数, 约数思路代码 题目 200. Hankson的趣味题 算法标签: 数论, 最大公约数, 最小公倍数, 约数 思路 因为 [ x , a 0 ] b 1 [x, a_0] b_1 [x,a0​]b1​因此 x x x一定是 b 1 b_1 b1​约数, 注意到, 数据范围是 2 1 0 9 2 \…

题目

200. Hankson的趣味题

算法标签: 数论, 最大公约数, 最小公倍数, 约数

思路

因为 [ x , a 0 ] = b 1 [x, a_0] = b_1 [x,a0]=b1因此 x x x一定是 b 1 b_1 b1约数, 注意到, 数据范围是 2 × 1 0 9 2 \times 10 ^ 9 2×109如果直接使用试除法计算约数时间复杂度是 O ( n n ) O(n \sqrt n) O(nn )会超时, 因此需要进行优化,
可以将 1 ∼ n 1 \sim \sqrt n 1n 之间的质数全部预处理出来, 然后将 b 1 b_1 b1转化为算数基本定理形式 因为在 i n t int int范围内约数个数最多的数的约数个数大约是 1600 1600 1600个, 因此有效降低了时间复杂度

代码

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cmath>using namespace std;typedef long long LL;
typedef pair<int, int> PII;
//预处理的质数的个数和约数个数
const int N = 50000, M = 100;int primes[N], cnt;
bool vis[N];
PII factor[M];
int f_cnt;
int divs[N], d_cnt;void get_primes() {for (int i = 2; i < N; ++i) {if (!vis[i]) primes[cnt++] = i;for (int j = 0; (LL) primes[j] * i < N; ++j) {vis[primes[j] * i] = true;if (i % primes[j] == 0) break;}}
}void dfs(int u, int curr) {if (u > f_cnt) {divs[d_cnt++] = curr;return;}for (int i = 0; i <= factor[u].second; ++i) {dfs(u + 1, curr);curr *= factor[u].first;}
}int gcd(int a, int b) {return b ? gcd(b, a % b) : a;
}int main() {ios::sync_with_stdio(false);cin.tie(0), cout.tie(0);get_primes();int n;cin >> n;while (n--) {// (x, a0) = a1, [x, b0] = b1int a0, a1, b0, b1;cin >> a0 >> a1 >> b0 >> b1;// 分解质因数int val = b1;f_cnt = 0;for (int i = 0; primes[i] <= val / primes[i]; ++i) {if (val % primes[i] == 0) {int c = 0;while (val % primes[i] == 0) val /= primes[i], c++;factor[++f_cnt] = {primes[i], c};}}if (val > 1) factor[++f_cnt] = {val, 1};// 求b1的所有约数d_cnt = 0;dfs(1, 1);int ans = 0;//枚举所有约数, 判断是否符合条件for (int i = 0; i < d_cnt; ++i) {int x = divs[i];if (gcd(x, a0) == a1 && ((LL) x * b0 / gcd(x, b0)) == b1) ans++;}cout << ans << "\n";}return 0;
}
http://www.dtcms.com/wzjs/409563.html

相关文章:

  • dota2max网站怎么做壁纸外贸网络推广
  • java网站开发公司企业网络营销方案设计
  • 网站做的支付宝接口吗网站优化排名软件网站
  • 电商开放平台竞价推广和seo的区别
  • 网站建设需求登记表百度推广登录平台登录
  • 动漫设计有前途吗北京朝阳区优化
  • 个人网站推荐免费全球搜索引擎排名2022
  • 企业网站信息管理系统网站是怎么优化推广的
  • 金峰辉网站建设seo 优化 服务
  • 信息流广告公司排名广州百度搜索优化
  • 汕头seo按天付费合肥seo
  • 网站ip访问做图表宁波seo网络推广代理公司
  • 什么网站需要公安备案企业seo培训
  • 连云港人才专业化网站奉化首页的关键词优化
  • 快速免费做网站海口网站排名提升
  • 贵州5g网站建设友情链接的方式如何选择
  • 外国网站翻墙怎么做抖音关键词推广
  • 内容转载的网站怎么做网络推广优化方案
  • 徐汇网站制作seo百度站长工具查询
  • 禅城技术支持骏域网站建设新浪微指数
  • 建设银行信用卡积分兑换商城网站数据查询网站
  • 本地网站做通用会员卡seo分析报告怎么写
  • 制作一个交易平台网站线下宣传渠道和宣传方式
  • 阿里云上的网站空间好用吗免费推广app
  • 济南模版网站百度seo营销推广
  • 广州公司官网搭建深圳谷歌优化seo
  • 提高政府网站建设水平上海自媒体推广
  • 爱妮微如何做网站链接的网址seo自动优化软件下载
  • 玄圭做网站怎么样百度seo流量
  • 上饶有哪些做网站的店万网域名查询