题意:。。一个公式

思路:和区间筛类似POJ 2689。。。筛出L,R的每个质因数的个数即可,然后简单的组合公式,就可以算出i的k次方的约数个数

PS。。vector乱搞会卡常。。

代码:

#include<bits/stdc++.h>
using namespace std;
#define MEM(a,b) memset(a,b,sizeof(a))
#define PB push_back
#define MP make_pair
#define X first
#define Y second
#define bug puts("bug");
typedef long long ll;
const int maxn=1e6+10;
const int MAXN=1000010;
const int mo=998244353;
ll prime[MAXN+1];
void getPrime(){memset(prime,0,sizeof(prime));for(int i=2; i<=MAXN; i++){if(!prime[i])prime[++prime[0]]=i;for(int j=1; j<=prime[0]&&prime[j]<=MAXN/i; j++){prime[prime[j]*i]=1;if(i%prime[j]==0) break;}}
}
ll t,l,r,k;
ll X[maxn],A[maxn];int main(){getPrime();scanf("%d",&t);while(t--){scanf("%lld%lld%lld",&l,&r,&k);for(ll i=l;i<=r;i++) X[i-l]=i,A[i-l]=1;ll ans=0,ret,be,p;for(ll i=1;prime[i]*prime[i]<=r&&i<prime[0];++i){be=l-l%prime[i],p=prime[i];if(be<l) be+=p;for(ll j=be;j<=r;j+=p){ret=1;while(X[j-l]%p==0){ret=(ret+k)%mo;X[j-l]/=p;}A[j-l]=(A[j-l]*ret)%mo;}}for(ll i=l;i<=r;i++) if(X[i-l]!=1) A[i-l]=(A[i-l]*(k+1))%mo;for(ll i=l;i<=r;i++)ans=(A[i-l]+ans)%mo;printf("%lld\n",ans);}return 0;
}

hdu 6069 区间筛相关推荐

  1. HDU 6069 数论 区间素数筛 + 赛后反思

    题目链接 设 x = p 1 a 1 p 2 a 2 . . . . p n a n x = p_1^{a_1}p_2^{a_2}....p_n^{a_n} x=p1a1​​p2a2​​....pna ...

  2. 2019 ACM/ICPC 南京站 E.Observation,区间筛

    题目大意 求 (∑d=LR(fdxor K))(modP)\Big(\sum\limits_{d=L}^{R} (f_d\text{ xor } K)\Big)\pmod{P}(d=L∑R​(fd​  ...

  3. 素数统计 平移区间筛质数(1e9)

    素数统计 思路: 平移区间筛质数(1e9), 对于每个质数逐个在区间中筛数 #include <cstdio> #include <cstring> #include < ...

  4. HDOJ 6069 素数筛

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=6069 题意: 就是题目中的公式 题解: 这个题公式很好推 d(nk) = (kc1 + 1)(kc2 + ...

  5. HDU 5696 区间的价值 暴力

    区间的价值 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5696 Description 我们定义"区间的价值"为一段区间的最大 ...

  6. POJ - 2689 Prime Distance(素数区间筛模板)

    题目链接:点击查看 题目大意:给出一段闭区间[l,r],求区间内相邻距离最大的素数对和相邻距离最小的素数对,题目保证r-l<=1e6,1<=l<=r<= 题目分析:因为我们要求 ...

  7. LightOJ1197 Help Hanzo 区间筛

    LightOJ1197 Help Hanzo 标签 区间筛法 前言 我的csdn和博客园是同步的,欢迎来访danzh-博客园~ 简明题意 求区间质数个数(区间长度<=1e6) 思路 区间[l,r ...

  8. Counting Divisors HDU - 6069

    设n=p_1^{c_1}p_2^{c_2}...p_m^{c_m}n=p​1​c​1​​​​p​2​c​2​​​​...p​m​c​m​​​​,则d(n^k)=(kc_1+1)(kc_2+1)...( ...

  9. [hdu] 5696 区间的价值 || 序列分治

    原题 我们定义"区间的价值"为一段区间的最大值*最小值. 一个区间左端点在L,右端点在R,那么该区间的长度为(R−L+1). 求长度分别为1-n的区间的最大价值. 保证数据随机 因 ...

  10. Palindrome subsequence HDU - 4632 区间dp|记忆化搜索

    // 区间dp import java.util.Scanner;/**** @author CN*/ public class main {static int mod = 10007;static ...

最新文章

  1. WebMatrix 3发布了!
  2. 进程通信之二 管道技术第二篇 匿名管道
  3. 高德 Serverless 平台建设及实践
  4. 关于文件透明加密解密
  5. cpu压测 windows_cpu压测神器:cpuburn深度指南
  6. NYOJ 8 一种排序
  7. 来,看看你的单片机程序有多大!
  8. socket -- epoll模型
  9. 通俗易懂的Matlab线性规划求解详解
  10. compositionstart、compositionend事件屏蔽拼音状态
  11. win10系统开启扫描仪服务器,win10系统打开打印机和扫描仪的操作方法
  12. 安卓升级AndroidX手把手教程
  13. CVPR 2022|中国科大​等提出点云连续隐式表示Neural Points:上采样任务效果惊艳!...
  14. 104 自定义大头针
  15. 巧妇居家过日子的妙招
  16. 51单片机用lcd1602显示两行字符串
  17. JAVA的教师档案管理系统_教师档案管理系统的设计与实现
  18. 【Web技术】1431- 总结前端主题切换的思考和现代前端样式的解决方案落地
  19. 前端开发者的专业度自查 100 条
  20. 告诫程序员们,大三/大四有必要去实习吗?

热门文章

  1. (C语言)不变初心数 (15 分)---pta
  2. 学生端伽卡他彻底卸载
  3. 2019游戏开发学习路线:游戏程序员的核心竞争力是......
  4. 高等数学(第七版)同济大学 习题7-2 个人解答
  5. 观光公交(codevs 1139)题解
  6. java敏捷开发的落地与实施_20165219 《Java程序设计》实验三(敏捷开发与XP实践)实验报告...
  7. 案例:通过空气质量指数AQI学习统计分析并进行预测(上)
  8. oracle 更改归档位置,oracle更改归档路径
  9. 关于高德地图的分析报告
  10. JAVA死磕系列 疯狂创客圈