链接:https://ac.nowcoder.com/acm/contest/992/D

$a_{i}=\dfrac {3a_{i-1}-a_{i-2}}{2}+i+1$

移项再化一下

$a_{i}-a_{i-1}-2i=\dfrac {1}{2}\left[ a_{i-1}-a_{i-2}-2\left( i-1\right) \right]$

令$t_{i}=t_{i}=a_{i}-a_{i-1}-2i$

由于$a_{0}=0$ $a_{1}=2$ 所以$t_{1}=0$

所以$t_{i}=0$ $(i\geq 1)$

即$a_{i}=a_{i-1}+2i$

$\left\{\begin{matrix}
 & a_{i}=a_{i-1}+2i& \\
 & \cdots & \\
 & a_{1}=a_{0}+2\times 1 &
\end{matrix}\right.$

$i$个式子相加得到

$S_{i}=S_{i-1}+i\left( i+1\right)$

所以$a_{i}=i^{2} + i$

也可以打表,但我感觉打表会不会更难看出来?

现在可以先把1~$n$的总和先求出来,再减去与$m$不互质的和就是答案了。

预处理出$m$的素因子,然后枚举一下所有组合的情况(由于$m$随机生成,素因子个数不会很多)

每一个素因子乘积的组合$k$有$\lfloor \dfrac {n}{k}\rfloor$个

然后容斥一下

$S_{n}=\dfrac {n\cdot \left( n+1\right) \left( 2n+1\right) }{6}$

$k^{2}+\left( 2k\right) ^{2}+\ldots +\left( \lfloor \dfrac {n}{k}\rfloor k\right) ^{2}$

把$k^{2}$提出来就又是一个平方和了

1~$i$的和同理

#include <bits/stdc++.h>
#define ll long long
using namespace std; const ll MOD = 1E9 + ;
const ll inv2 = ;
const ll inv6 = ; ll n, m;
ll fac[]; inline ll sqr(ll x) {
return (x % MOD * (x + ) % MOD * ( * x + ) % MOD * inv6) % MOD;
} inline ll f(ll x) {
return ((x + ) * x % MOD * inv2 % MOD) % MOD;
} inline ll cal(ll temp) {
ll k = n / temp;
return (sqr(k) * temp % MOD * temp % MOD + f(k) * temp % MOD) % MOD;
} int main() {
while (~scanf("%lld%lld", &n, &m)) {
int cnt = ;
for (int i = ; i * i <= m; i++) {
if (m % i == ) {
fac[cnt++] = i;
while (m % i == ) m /= i;
}
}
if (m != ) fac[cnt++] = m;
ll ans = cal();
ll ans0 = ;
for (int i = ; i < ( << cnt); i++) {
ll temp = ;
int sum = ;
for (int j = ; j < cnt; j++) {
if (i & ( << j)) {
sum++;
temp *= fac[j];
}
}
if (sum & ) {
ans0 = (ans0 + cal(temp)) % MOD;
} else {
ans0 = (ans0 - cal(temp) + MOD) % MOD;
}
}
ans = (ans - ans0 + MOD) % MOD;
printf("%lld\n", ans);
}
return ;
}

吉首大学2019年程序设计竞赛(重现赛)D - 数列求和(嘤雄难度)的更多相关文章

  1. 吉首大学2019年程序设计竞赛(重现赛)- A SARS病毒 (矩阵,欧拉降幂)

    题目链接:https://ac.nowcoder.com/acm/contest/992/A 题意:求出长度为n的字符串个数,字符串由A.C.G.T组成,其中A和C必须成对出现. 思路:我们规定:   ...

  2. 吉首大学2019年程序设计竞赛(重现赛)-K(线段树)

    题目链接:https://ac.nowcoder.com/acm/contest/992/K 题意:给一个大小为1e5的数组,由0 1组成,有两种操作,包括区间修改,将一段区间内的0换成1,1换成0; ...

  3. 吉首大学2019年程序设计竞赛(重现赛)-J(树形DP)

    题目链接:https://ac.nowcoder.com/acm/contest/992/J 题意:题意很清晰,就是求任意两点距离的和,结果对1e9+7取模. 思路:裸的树形DP题,一条边的贡献值=这 ...

  4. 吉首大学2019年程序设计竞赛(重现赛)I 滑稽树上滑稽果 (莫队+逆元打表)

    链接:https://ac.nowcoder.com/acm/contest/992/I来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536K  ...

  5. 吉首大学2019年程序设计竞赛(重现赛) J 滑稽树下你和我 (递归)

    链接:https://ac.nowcoder.com/acm/contest/992/J来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K ...

  6. 吉首大学2019年程序设计竞赛(重现赛) B 干物妹小埋

    链接:https://ac.nowcoder.com/acm/contest/992/B来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K ...

  7. 长安大学第四届ACM-ICPC“迎新杯”程序设计竞赛-重现赛 G - 彩虹岛套娃

    题目描述 俄罗斯套娃是俄罗斯特产的木制玩具,一般由多个一样图案的空心木娃娃一个套一个组成,最多可达十多个,通常为圆柱形,底部平坦可以直立.颜色有红色,蓝色,绿色,紫色等.最普通的图案是一个穿着俄罗斯民 ...

  8. 长安大学第四届ACM-ICPC“迎新杯”程序设计竞赛-重现赛 H - 圣诞节糖果

    题目描述 圣诞节临近,彩虹岛的黑心商人

  9. 长安大学第四届ACM-ICPC“迎新杯”程序设计竞赛-重现赛 F - 打铁的箱子

    题目描述 作为彩虹岛上最擅长打铁的人,

随机推荐

  1. [转帖]Masscan教程和入门手册

    Masscan教程和入门手册 https://www.4hou.com/tools/8251.html 愣娃 安全工具 2017年11月1日发布 收藏 导语:masscan是为了尽可能快地扫描整个互联 ...

  2. Kubernetes之动态Jenkins slave

    一.前提 本次实践前,需已完成以下过程: 1.搭建好一个Kubernetes集群(本实践为单节点集群),网上参考较多,不赘述. 2.选取kubernetes集群外的一台服务器安装 NFS服务端,并在集 ...

  3. Linux生产环境上,最常用的一套“Sed“技巧

    sed命令应用广泛,使用简单,是快速文本处理的利器.它其实没多少技巧,背诵.使用是最合适的学习渠道,属于硬技能.但它又很复杂,因为高级功能太多.本篇不去关注sed的高级功能,仅对常用的一些操作,进行说 ...

  4. ASP.NET SignalR 系列(四)之指定对象推送

    在上一章讲到了广播推送,即所有订阅的用户都能收到,这种适合于信息广播. 接下来介绍如何给指定的对象推送 在讲这个之前先说明一下连接创建的基础知识 1.每个页面与服务端创建连接并启动时,这时服务端会产生 ...

  5. pandas-10 pd.pivot_table()透视表功能

    pandas-10 pd.pivot_table()透视表功能 和excel一样,pandas也有一个透视表的功能,具体demo如下: import numpy as np import pandas ...

  6. INTERVAL 用法 mysql

    原文:https://blog.csdn.net/sqlquan/article/details/82699237 做个例子描述吧,也许更易于理解. 准备: 1.建表 create table INT ...

  7. 如何统一管理单个任务下所有API的同步情况?

    1. 一分钟完成单个API配置 单个API的配置包含:API名称.URL地址.请求方式.参数设置.自定义高级设置. 参数允许用户填写:Text.WebService.Timestamp.DependO ...

  8. Hive函数集锦

    一.内置运算符 1关系运算符 2.算术运算符 3.逻辑运算符 4.复杂类型函数 5.复杂类型函数应用

  9. 【OGG】OGG的下载和安装篇

    [OGG]OGG的下载和安装篇 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩ ...

  10. MYSQL使用source命令,导入SQL文件

    命令 source D:/student.sql