简单题 加强版

news/2024/11/15 14:04:08/文章来源:https://www.cnblogs.com/wlesq/p/18328763

由简单版中,我们已经推出了

\[\sum_{d=1}^n\mu^2(d)d^{k+1}\sum_{t=1}^{\lfloor {\frac{n}{d}} \rfloor}\mu(t)t^k\sum_{i=1}^{\lfloor {\frac{n}{dt}} \rfloor}\sum_{j=1}^{\lfloor {\frac{n}{dt}} \rfloor}(i+j)^k \]

我们设\(T=td\),则
\(S(x)=\sum_{i=1}^x\sum_{j=1}^x(i+j)^k\)
$\sum_{d=1}^n \mu ^2 (d)d\mu (T/d)\sum_{T=1}^n T^k S(n/T)$
image

点击查看代码
#include <bits/stdc++.h>
#define speed() ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#define ll int
#define ull unsigned long long
#define lid (rt<<1)
#define rid (rt<<1|1)
// #define endl '\n'
//#define int long long
#define pb push_back
// #pragma comment(linker, “/STACK:512000000,512000000”) 
using namespace std;
const int N = 1e7+5;
int f[N*2],mu[N*2],F[N*2],pr[N*2],tot,p[N*2],s[N*2];
bool is[N*2];
int n,k;
ll qpow(ll a,ll b)
{ll ans=1;while(b){if(b&1)ans=ans*a;b>>=1;a=a*a;}return ans;
}
void getMu()
{f[1]=1;mu[1]=1;p[1]=1;for(int i=2;i<=n*2;i++){if(!is[i]){pr[++tot]=i;p[i]=qpow(i,k);mu[i]=-1;f[i]=i-1;}for(int j=1;j<=tot&&i*pr[j]<=2*n;j++){p[i*pr[j]]=p[i]*p[pr[j]];is[i*pr[j]]=1;if(i%pr[j]==0){int q=i/pr[j];if(q%pr[j])f[i*pr[j]]=-pr[j]*f[q];break;}mu[i*pr[j]]=-mu[i];f[i*pr[j]]=f[i]*(pr[j]-1);}}for(int i=2;i<=2*n;i++)f[i]=f[i-1]+p[i]*f[i],p[i]+=p[i-1];for(int i=2;i<=2*n;i++)p[i]+=p[i-1];
}
ll calc(ll n)
{return p[n<<1]-p[n]*2;
}
int main()
{speed();// freopen("in.in","r",stdin);// freopen("out.out","w",stdout);int T;cin>>T>>n>>k;getMu();while(T--){ll tn;cin>>tn;int l=1,r,ans=0;while(l<=tn){r=tn/(tn/l);ans+=(f[r]-f[l-1])*calc(tn/l);l=r+1;}// cout<<ans<<endl;cout<<(ans+(1ll<<32))%(1ll<<32)<<endl;}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/773207.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

视野修炼-技术周刊第94期 | 2024 开发者调查报告

① Stack Overflow 2024 开发者调查报告 ② React 2023 调查结果 ③ Sendune - HTML 邮件制作工具 ④ hash-wasm - 哈希函数库 ⑤ ky - 基于 fetch 的 HTTP 客户端 ⑥ 英:前端构建概述 ⑦ Album AI - AI 图片检索 ⑧ AI Emoji Search欢迎来到第 94 期的【视野修炼 - 技术周刊】…

IDEA 2024最新永久安装使用教程

在软件开发的世界里,IntelliJ IDEA作为Java、Kotlin等多语言开发者的首选IDE(集成开发环境),以其强大的功能、灵活的扩展性和卓越的智能辅助功能赢得了广泛的赞誉。随着人工智能(AI)技术的飞速发展,IntelliJ IDEA也紧跟时代步伐,通过引入一系列AI编程插件,极大地提升了…

c语言中给int类型变量赋值double型数值; 给double型变量赋值int型数据

001、 给int型变量赋值double型数据[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c ## 测试程序 #include <stdio.h>int main(void) {int i;i = 8.583;printf("i = %d\n", i); // 其返回值是去掉了小数点后…

408 数据结构线性表算法

第一章 线性表 定义 :线性表是具有 相同数据类型 的n(n>=0)个数据元素的 有限序列 。 线性表的表示 :若用L命名,表示:L=(a1,a2,a3,a4,a5,……,an) 线性表的逻辑特性 :a1:唯一的表头元素 an:唯一的表尾元素 除去a1:每个元素有且仅有一个直接前驱 除去an:每个元素有…

c 语言中 用 %d输出double型数据;%f输出int型数据

001、 %f输出int型数据,其值为0.[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c ## 测试程序 #include <stdio.h>int main(void) {int i = 10;printf("i = %f\n", i); // %f输出int型数据return 0; } [root@PC1 test]# gcc te…

一觉醒来,虚拟机的IP变了【解决】

为了模拟服务器,我使用了虚拟机来连接我的后端程序。配置了很多信息,就比如我的虚拟机ip。但是一觉醒,来再次启动发现虚拟机的ip变了!!!于是,我查阅了相关资料......解决办法 1修改配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=Ethernet PROXY_METHOD=…

408 数据结构队列算法

第三章 队列 3.1顺序队列 #define MAXSIZE 64 typedef int ElemType; typedef struct {ElemType data[MAXSIZE];int front; //队头指针int rear; //队尾指针int size; //队列大小 }SeQueue;//初始化队列 void initQueue(SeQueue& Q) {//对数据元素进行初始化,防止出现脏数…

408数据结构树算法

第四章 树 4.1 二叉树的顺序存储 #define MAXSIZE 16 typedef int ElemType; typedef struct {ElemType data[MAXSIZE];int size; }Tree;//初始化二叉树 void initTree(Tree& T) {for (int i = 0; i < MAXSIZE; i++) {T.data[i] = 0; //假设0表示空节点}T.size = 0; } /…

多项式全家桶

多项式合集 前置知识:多项式的定义,表示方法,FFT,NTT,微积分等。 注意事项多项式的封装很重要,现在一般都是用将指针传入一个函数的方式来进行多项式操作,如:void Inv(ll *f,ll *g,int n),表示对 \(n\) 次多项式 \(f\) 求逆,结果存在 \(g\) 中。 多项式数组多了一定要…

KD-Tree 学习笔记

好想睡觉KD-Tree 学习笔记 建树如果当前超长方体只有一个点,返回这个点 选择一个维度(轮流) 选择中位数(\(O(n)\)) 递归应用定理二维 KDT 中节点代表矩阵与任意一个矩形(边界上)有交的只有 \(O(\sqrt n)\) 个。证明: 考虑一条直线,与KDT的交集,此层最多有两个,递归得…