首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
漂亮数
5条解析
开通博客写题解
houpingze
发表于 2021-08-28 10:16:14
我们首先处理出的所有素数,由于时间限制,空间限制很大,我们使用最优版的埃氏筛(时间复杂度),然后对于每一对素数处理,标记,注意他们两个乘起来如果超过了,就不要计算。具体实现见代码: // Problem: 漂亮数 // Contest: NowCoder // URL: https://ac.no
展开全文
sunny_forever
发表于 2021-09-01 21:17:59
线性筛 + 前缀和 思路 先用线性筛把漂亮数给筛出来,然后利用前缀和的性质做到 O(1) 查询 Code #include <bits/stdc++.h> using namespace std; const int N = 1e8+10; int cnt; bool st[N];
展开全文
杨悦聪
发表于 2023-01-30 09:36:00
我觉得这题不就是求质数加前缀和嘛(好像其他大佬也是呢) 先欧拉筛一遍,欧拉筛时再记录一下漂亮数,做一下前缀和,最后再提取就行了! #include <bits/stdc++.h> using namespace std; int p[100000000],b[100000005],cn
展开全文
Backl1ght
发表于 2021-08-28 01:30:23
H. 漂亮数 线性筛加打表. 如果处理出以内,每个数是否是漂亮数,然后做个前缀和,就可以回答询问了. 怎么处理呢? 线性筛的过程中标记一下就可以了. #include <bits/stdc++.h> using namespace std; #ifdef BACKLIGHT #inclu
展开全文
lzlwdz
发表于 2024-05-01 09:27:09
写过素数的个数都知道想要快速找到l,r中间的符合条件的数,可利用筛法 #include <bits/stdc++.h> using namespace std; using ll=long long; const int N=1e8+10; int p[N],sum[N],cnt;
展开全文
查看本题
查看本题讨论
相关比赛
11214-牛客小白月赛37
进入比赛
19293-小白月赛37内测
进入比赛
20331-1
进入比赛
26656-2021秋季算法入门班第十章习题:数学
进入比赛
27864-ZJNU_数学
进入比赛
等你来战
查看全部
牛客周赛 Round 98
报名截止时间:2025-06-29 21:00
牛客小白月赛119
报名截止时间:2025-07-04 21:00
牛客周赛 Round 99
报名截止时间:2025-07-06 21:00
牛客练习赛142
报名截止时间:2025-07-11 21:30
牛客周赛 Round 100
报名截止时间:2025-07-13 21:00
2025牛客暑期多校训练营1
报名截止时间:2025-07-15 17:00
2025牛客暑期多校训练营2
报名截止时间:2025-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题