Description

粗题⼈症重承诺此题不考你没学过的算法

给你⼀个区间[L,R]

需要选择N个数,这N个数都在这个区间范围内

那么我们知道⼀共有[R-L+1]^N种选法

假如我们想要这N个数的最⼤公约数恰好是K

请问⼀共有多少种选法,输出答案对1e9+7取模

Input

多组测试数据 对于每组数据,输⼊⼀⾏包含4个整数N,K,L,R(1<=N,K,L<=10^9,L<=R<=10^9)

(0<=R-L<=10^5)

Output

对于每组数据输出⼀个整数

Sample Input

2 2 2 4
2 100 2 4
1 5 5 5
73824 17347 9293482 9313482
222 222 222 22222

Sample Output

3
0
1
0
339886855

HINT

#include <iostream>
#include <fstream>
#include <sstream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <algorithm>
#include <vector>
#include <queue>
#include <deque>
#include <stack>
#include <set>
#include <map>
#include <complex>
#include <bitset>
#include <iomanip>
#include <utility> using namespace std; typedef long long LL;
typedef pair<int,int> pii;
typedef complex<double> point; const int mod = 1000000007; int f[200000]; int POW (int base, int p){ int ret = 1, cur = base; while (p){ if (p & 1) ret = (LL)ret * cur % mod; p>>=1; cur = (LL)cur * cur % mod; } return ret;
} struct RandomGCD{ int countTuples(int N, int K, int lo, int hi){ memset(f, 0, sizeof(f));lo = (lo+K-1)/K, hi = hi/K;  if (lo > hi) return 0; for (int i=100000; i>=1; i--){ int L = (lo + i-1) / i; int H = hi / i; if (L <= H){ f[i] = POW(H-L+1, N);  f[i]-= (H-L+1); if (f[i] < 0) f[i]+= mod; for (int j=i*2; j<=100000; j+=i){ f[i]-=f[j]; if (f[i]<0) f[i]+= mod; } } } if (lo == 1) f[1] = (f[1] + 1) % mod; return f[1]; }
};int main() {RandomGCD test;int N, K, L, R;while (cin >> N >> K >> L >> R) {cout << test.countTuples(N, K, L, R) << endl;}return 0;
}

粗题⼈不考你没学过的算法相关推荐

  1. 上海财经应用统计考python_上海财经大学应用统计专硕考研经验帖

    写在前面: 首先自我介绍一下,我本科就读于东南大学,学的是机械工程,三跨考研到了上海财经大学统计与管理学院的应用统计硕士(b组).初试成绩387: 先说说专业选择的问题,如果你对于自己现在的专业不太适 ...

  2. 没学过python、但是还是有公司要-为什么自学Python看不进去?

    超级干货来了,浓缩了我学习python的所有学习经历,从中获取到的经验分享给你,如果你看了没用,退乎 大学 高中的我,考了三次高考才勉强考上一个二本大学一本数学专业,你没听错,三次:就像俞敏洪和马云一 ...

  3. 北师大朱小明C语言,2016~2021年北师大教育信息工程考博真题、考博参考书、历年分数线、录取名单、导师信息(24页)-原创力文档...

    2016 -2021 年北师大教育信息工程考博真题.考博参考书.历年 分数线.录取名单.导师信息 育明教育506 大印老师整理 2020 年6 月1 日 目录 一.2021年北师大教育信息工程考博参考 ...

  4. c语言的考试是操作电脑还是写试卷,C语言考试试卷都是基础的题目,由于本人没学过C语言,求各位帮忙, 爱问知识人...

    都是基础的题目,由于本人没学过C语言,求各位帮忙,通过后再给一次分一.单项选择题(10道小题,共10分) 1.以下程序的输出结果是:main(){int x; for(x=1;x<10;x++) ...

  5. 做了5年测试连一门语言都没学?逆袭后拿到3个超22K offer!

    所谓的"眼睛一睁一闭,一天就过去了,日子就是这样."--只是逃脱不出舒适区泥淖的人,给自己画地为牢,还安慰自己众生皆如是. 生活没有一个模样. 而是,你把生活过成了什么样. 大家都 ...

  6. 计算机网考统考机考试操作题,计算机统考操作题常考题型

    <计算机统考操作题常考题型>由会员分享,可在线阅读,更多相关<计算机统考操作题常考题型(19页珍藏版)>请在人人文库网上搜索. 1.第二章 Windows操作系统操作题 (有1 ...

  7. 没学过画画可以学服装设计吗?

    很多想学服装设计的同学会有疑问:没学过画画可以学服装设计吗?答案是肯定可以学的.莱佛士设计学院认为,不管你有没有学过画画,只要你对学服装设计有着浓厚的兴趣与坚定的决心,没学过画画也是可以学服装设计. ...

  8. 我没学过计算机,是怎么接了四个私活还挣了两个 iPad 的?

    ​这是我的第 61 篇原创文章 作者 | 悟空聊架构 来源 | 悟空聊架构(ID:PassJava666) 转载请联系授权(微信ID:PassJava) 前言 大家看到这篇文章的时候,我和一枝花.Gu ...

  9. 制药工程专业可以跨考计算机,我是学音乐大三学生想考研,想考别的专业请问能考什么专业比较好考...

    我是学音乐大三学生想考研,想考别的专业请问能考什么专业比较好考以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 我是学音乐 ...

最新文章

  1. PTA数据结构与算法题目集(中文)7-38
  2. 希尔排序法对一维数组排序
  3. Linux用户、群组管理
  4. DelphiX教程系列 1 - 使用键盘和摇杆
  5. VC中使用全局变量的2种办法及防错措施
  6. 科大星云诗社动态20210331
  7. 九十六、双指针和滑动窗口算法模板
  8. 30屏幕参数_顶级屏幕加持,一加8系列核心配置、屏幕参数官方公布
  9. ASP.NET Core Razor Pages
  10. 没有值的json字符串_Java中具有原始数据类型值的字符串连接
  11. 【转】Dynamics 365中的应用程序介绍
  12. 需求分析的图形工具(层次方框 warnier IPO)
  13. django配置随时执行的脚本,使用运行时的manage环境执行程序
  14. Python批量导入图片生成能治疗颈椎病的HTML5版课件
  15. Linux工作笔记037---Centos8.2下安装mysql_测试通过_注意这里安装8.0.22版本的_8.0以后的版本有需要注意的地方_跟7.0之前的版本不一样
  16. AI戒毒?没错,北京开始这么干了
  17. Python + Selenium,带你分分钟搭建 Web 自动化测试框架!
  18. LINUX C获取并设置环境变量
  19. 拳皇重生服务器维护,《拳皇97 OL》7月7日更新维护公告
  20. 有限元方法入门:有限元方法简单的一维算例

热门文章

  1. mysql md5版本校验_通过MD5校验和验证MySQL软件包的完整性
  2. java 保护类型_Java 类的受保护访问(学习 Java 编程语言 046)
  3. stl clocklist 查找元素_剑指信奥 C++ 之 STL 迭代器(上)
  4. java+脚本+压枪,我的世界钓鱼脚本代码csgo压枪
  5. linux鼠标触摸屏应用程序,在Ubuntu环境下实现插入鼠标自动关闭触摸板
  6. 八、深入Go 编程语言接口
  7. 二、Go语言基础入门
  8. 五十七、教用Python中的turtle海龟画图(下篇)
  9. ACL 2021 | 基于依存句法驱动注意力图卷积神经网络的关系抽取
  10. 全球顶会论文作者,28天手把手带你复现顶会论文