牛客小白月赛9: div.2 A(线性筛)
链接:https://ac.nowcoder.com/acm/contest/275/J
来源:牛客网
题目描述
定义 f(n,k) 表示将 n 拆分成 k 个有序正整数乘积的方案数。
给定 n,k,,求f(1,k)~f(n,k)
举个例子,假设要求 f(4,3) ,因为
所以 f(4,3)=6 。
输入描述:
第一行两个正整数 n,k 。
输出描述:
设,且gi ≥ 0,且gi尽可能的小设你只需要输出T就行了
输入
4 3
输出
11
说明
f1,3=1,f2,3=3,f3,3=3,f4,3=6
有点懒,直接放下官网题解吧
那么一个线性筛就搞定了
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<map>
#include<string>
#include<math.h>
#include<queue>
#include<stack>
#include<iostream>
using namespace std;
#define LL long long
#define mod 1000000007
LL F[10000005], inv[686] = {0,1};
int cnt, flag[10000005], num[10000005], pri[1000005];
int main(void)
{LL ans, n, i, j, k;scanf("%lld%lld", &n, &k);k %= mod;for(i=2;i<=666;i++)inv[i] = (mod-mod/i)*inv[mod%i]%mod;for(i=2;i<=10000000;i++){if(flag[i]==0){num[i] = 1;pri[++cnt] = i;F[i] = k;}for(j=1;j<=cnt&&i*pri[j]<=10000000;j++){flag[i*pri[j]] = 1;if(i%pri[j]==0){num[i*pri[j]] = num[i]+1;F[i*pri[j]] = F[i]*(num[i]+k)%mod*inv[num[i]+1]%mod;break;}else{num[i*pri[j]] = 1;F[i*pri[j]] = F[i]*k%mod;}}}ans = 0;F[1] = 1;for(i=1;i<=n;i++)ans ^= (F[i]+i)%mod;printf("%lld\n", ans);return 0;
}
/*
10000000 1000000000000000000
*/
牛客小白月赛9: div.2 A(线性筛)相关推荐
- 牛客小白月赛27 B.乐团派对
牛客小白月赛27 B.乐团派对 题目链接 题目描述 音乐是带给大家快乐的存在,而你的目标就是组建若干支乐队,让世界听到你们的演奏! 你目前有 nnn 位乐手,每位乐手只能进入一个乐队,但并不是每位乐手 ...
- 牛客小白月赛53(A-E)
牛客小白月赛53 入口 A:Raining #include<bits/stdc++.h> using namespace std; typedef long long ll;int a[ ...
- 牛客小白月赛16 小石的签到题(博弈)
牛客小白月赛16 小石的签到题 链接:https://ac.nowcoder.com/acm/contest/949/A来源:牛客网 题目描述 输入描述: 共一行,输入一个数 nnn . 输出描述: ...
- F.孤独(牛客小白月赛39)
F.孤独(牛客小白月赛39) 题意: 给定一棵树,寻找一个路径,将断掉所有与这个路径上的点相连的边,使得剩下的最大连通块的大小最小 题解: 这题有点印象,感觉做过,至少这个方法肯定遇到过 设dp[u] ...
- 牛客小白月赛58 B(暴力)C(思维)D(dp滚动数组优化)
牛客小白月赛58 感觉没什么意思,这场月赛出题人有点问题. B 题意:给定一定的数据填充顺序和每一个填充层的名称,只有填充满了上一层才可以填充下一层. 但是每一层又属于某一个大层,一个大层中包含了若干 ...
- 牛客小白月赛65个人题解A-E
1. 牛客小白月赛65 A. 牛牛去购物 题意:给定n元,购买价格为a元的篮球和价格为b的篮球,数量不定,要使得花掉的钱最多,也就是剩余的钱数最少,求这个值 (1 <= n, a, b < ...
- 牛客小白月赛24 J.建设道路
牛客小白月赛24 J.建设道路 题目链接 题目描述 牛牛国有 nnn 个城市,编号为 1-n,第 iii 个城市有一个价值 aia_iai ,牛国的国王牛阔落特别喜欢在牛牛国旅游,并且他不想每次旅游 ...
- 牛客小白月赛4 D.郊区春游
牛客小白月赛4 D.郊区春游 题目链接 题目描述 今天春天铁子的班上组织了一场春游,在铁子的城市里有 nnn 个郊区和 mmm 条无向道路,第 iii 条道路连接郊区 AiA_iAi 和 BiB_i ...
- 牛客小白月赛25 C.白魔法师
牛客小白月赛25 C.白魔法师 题目链接 题目描述 你是一个白魔法师. 现在你拿到了一棵树,树上有 个点,每个点被染成了黑色或白色. 你可以释放一次魔法,将某个点染成白色.(该点不一定是黑色点,也可以 ...
最新文章
- Intellij IDEA 中无法下载 Cloud Toolkit 问题解决
- [禅悟人生]越忙的人时间越多
- golang中的pprof支持
- poj 3487 zoj 1576 稳定婚姻
- Ubuntu中安装nginxError
- js遍历数组foreach_JavaScript forEach –如何在JS中遍历数组
- JavaScript 中 substr 和 substring的区别
- 【NOIP2012】【Luogu1075】质因数分解(模拟)
- OpenGL学习笔记(14)像素操作
- 朴素贝叶斯在文本分类中的应用之 伯努利
- 2009-03-13读书记录:《Enjoying Web Development with Wickte》三章心得
- 一个完整的App应该具备哪些功能
- AppStore发布流程(从证书创建到app发布一站式)
- 【顺序、分支、循环、子程序设计】—— 微机原理实验
- Unity3D 与 3DMax 结合开发
- 支付宝摇一摇红包脚本【Auto.js】
- 华为早几年的服务器型号,云服务器一般用几年
- win11+kodcloud、h5ai+phpstudy+ipv6搭建私人云盘、私人影院
- 百度Apollo计划跟踪:感知与预测中神经网络的分析
- 微积分入门书籍(一)
热门文章
- python开发软件的实例-这可能是最好玩的python GUI入门实例!
- python入门教程pdf-python基础教程第4版pdf
- python和java哪个好-Python和Java发展前景哪个好?Python开发学习
- python抛硬币正面向上概率_Python-计算抛硬币出现连续10次正面朝上的概率的仿真实验...
- npm 报错cb.apply is not a function
- VScode Settings Sync同步功能设置
- 全国计算机考试网页制作,全国计算机信息高新技术考试网页制作(FrontPage平台)网页制作员级考试考试大纲...
- 2020PHP版本,phpmaker2020
- jQuery 学习-样式篇(八):jQuery 设置元素的 CSS 样式
- Win10系统msvcr120.dll丢失解决