Educational Codeforces Round 88 (Rated for Div. 2) E(数学)
Educational Codeforces Round 88 (Rated for Div. 2)E
题目大意: 给你n,k(1<=k<=n<=5e5),从1到n中选k个数组成一个严格递增序列,如果对任何正整数,依次模上这k个数,无论这k个数如何排列得到的答案都相同,那么称这个序列为好序列,求好序列的个数%998244353
思路: 最后的余数是和最小的那个数的位置有关的,通过打表发现其余数是最小数的倍数时,无论位置,最后的余数都相同。
所以我们利用组合数,枚举最小的数i,然后从剩下的(n/i)-1个能整除i的数中随意挑k-1个即可。
证明:
设ai是最小的数,当ai出现后,后面的数字必定大于余数,使用后面的余数不变。
ai前面的数,x=(nai)+m,则余数为n,当前面的数是ai的k倍数时,x=(n1kai)+n2ai+m.其中(n1kai)+n2ai=(nai)。所有最后的余数还是等于m,无论他们的位置如何。
代码:
#include <bits/stdc++.h>
using ll = long long;
using namespace std;
const int mod = 998244353;ll fpow(ll a, ll b) {ll res = 1;while (b > 0) {if (b & 1) res = res * a % mod;a = a * a % mod;b >>= 1;}return res;
}ll inv(ll x) {return fpow(x, mod - 2);
}ll C(ll n, ll m) {if (n < m) return 0;ll res = 1;ll mi = min(m, n - m);for (int i = 1; i <= mi; i++)res = res * (n - i + 1) % mod * inv(i) % mod;return res;
}int main() {int n, k; cin >> n >> k;ll ans = 0;for (int i = 1; i <= n; i++)ans += C(n / i - 1, k - 1), ans %= mod;cout << ans << "\n";
}
Educational Codeforces Round 88 (Rated for Div. 2) E(数学)相关推荐
- Educational Codeforces Round 88 (Rated for Div. 2)(AB)
Berland Poker CodeForces - 1359A 代码如下: #include<bits/stdc++.h> #define ll long long using name ...
- Educational Codeforces Round 88 (Rated for Div. 2)C. Mixing Water(数学+二分法)---题解
C. Mixing Water 来源:http://codeforces.com/contest/1359/problem/C There are two infinite sources of wa ...
- Educational Codeforces Round 88 (Rated for Div. 2) C. Mixing Water (思维,数学)
题目链接 题意: 给你一杯热水和一杯冷水,问你最少用几杯水,使得混合后的温度与给定的t温度最相近. (这里至少要用一杯水,并且,交替使用,比如:第一杯只能用热水,第二杯只能用冷水,第三杯只能用热水依次 ...
- Educational Codeforces Round 90 (Rated for Div. 2)(A, B, C, D, E)
Educational Codeforces Round 90 (Rated for Div. 2) Donut Shops 思路 分三种情况: a==c/ba == c / ba==c/b这个时候两 ...
- Educational Codeforces Round 114 (Rated for Div. 2) (A ~ F)全题解
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Educational Codeforces Round 114 (Rated for Div. 2) ...
- Educational Codeforces Round 106 (Rated for Div. 2)(A ~ E)题解(每日训练 Day.16 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 Educational Codeforces Round 106 (Rated for Div. ...
- Educational Codeforces Round 37 (Rated for Div. 2) 1
Educational Codeforces Round 37 (Rated for Div. 2) A.Water The Garden 题意:Max想给花园浇水.花园可被视为长度为n的花园床,花园 ...
- Educational Codeforces Round 89 (Rated for Div. 2)(A, B, C, D)
Educational Codeforces Round 89 (Rated for Div. 2) A. Shovels and Swords 思路 题意非常简单,就是得到最多的物品嘛,我们假定a, ...
- Educational Codeforces Round 114 (Rated for Div. 2) D. The Strongest Build 暴力 + bfs
传送门 文章目录 题意: 思路: 题意: 你有nnn个装备槽,每个槽里面有cic_ici个力量加成,对于每个槽只能选一个力量加成,现在给你mmm个力量组合[b1,b2,...,bn][b_1,b_2 ...
最新文章
- 多少行数_技术分享 | MySQL:查询字段数量多少对查询效率的影响
- BlendMode颜色混合模式枚举值
- Hibernate中启用日志
- linux 正则表达式与实践
- servlet需要和ajax,如何使用Servlet和Ajax?
- transition的唧唧歪歪
- vscode导入本地jar包_go导入本地包踩坑(已解决!)
- linux下使用过的命令总结(未整理完)
- Spring中的Bean可以绕过生命周期管理吗?
- 汇编语言程序设计-钱晓捷(第五版)学习笔记目录
- 各种品牌进入Bios方式
- win10连Android机,Windows10电脑可以和安卓手机无缝连接使用了,实用性干翻Mac-win10手机...
- 6678手册阅读记录
- 制作电脑显示器流光溢彩
- 供应链优势持续赋能 国美生态圈日趋完善
- python爬取公众号阅读量_分享一个牛逼的Python项目:公众号文章爬虫
- poi导出word表格设置自动重调尺寸适应内容固定表格宽度
- 中北c语言程序设计,中北大学软件学2013届C语言程序设计实训题目.doc
- 启动kafka报错 count not reserve enough space for 1048576KB object heap
- 北京法院京牌小客车司法处置数据统计(Pandas)
热门文章
- 学好数学建模,走哪买菜都不怕!
- 姑娘,你为什么要编程?
- nginx php oracle,第8天 ORACLE安装及NGINX整合PHP环境
- 如何用Java讲一句话重复五遍_Java 0515 第二次课作业
- vb6 由于超出容量限制 不能创建新事务_分布式限流?你也能轻松玩转(没啥新技术)...
- c++歌手大赛系统_计人即讯|第十届程序设计大赛
- ironpython3发布时间_.NET 基金会项目介绍-DLR/IronPython2/IronPython3
- typora公式zuo对齐_Markdown编辑神器-Typora
- mysql 备份配置文件_mySQL配置文件、备份与恢复
- jsp中为什么在跳转500页面的时候 图片加载不出来