[hdu6588]Function
令$m=\lfloor \sqrt[3]{n} \rfloor-1$
$\sum_{i=1}^{n}gcd(floor(\sqrt[3]{i}),i)$
=$\sum_{i=1}^{m}\sum\limits_{j=i^{3}}^{(i+1)^{3}-1}gcd(i,j)+\sum\limits_{i=(m+1)^{3}}^{n}gcd(m+1,i)$
考虑该式的前缀和,即
$\sum_{i=1}^{n}gcd(m,i)$(上式的m和n和之前的无关系)
=$\sum_{d|m}d\sum_{i=1}^{n/d}\varepsilon(gcd(i,m/d))$
=$\sum_{t|m}\mu(t)\sum_{dt|m}n/dt\cdot d$
=$\sum_{T|m}n/T \sum_{d|T}d\cdot \mu(T/d)$
=$\sum_{T|m}n/T\cdot \varphi(T)$
对$\varphi$线性筛,原式后半部分可以用o(m),考虑前半部分
=$\sum_{i=1}^{m}\sum_{T|i}\varphi(T)\cdot (((i+1)^{3}-1)/T-(i^3-1)/T)$
=$\sum_{T=1}^{m}\varphi(T)\sum_{i=1}^{m/T}((iT+1)^{3}-1)/T-(iT^3-1)/T$
=$\sum_{T=1}^{m}\varphi(T)\sum_{i=1}^{m/T}3Ti^{2}+3i+1$
这个就也可以o(m)计算了(后面的sigma可以预处理,也可以套公式),总时间复杂度即o(m)

1 #include<bits/stdc++.h>
2 using namespace std;
3 #define N 10000005
4 #define mod 998244353
5 #define ll __int128
6 int T,m,ans,s1[N],s2[N],vis[N],phi[N],p[N];
7 char s[101];
8 int main(){
9 s1[1]=3;
10 s2[1]=4;
11 phi[1]=1;
12 for(int i=2;i<N-4;i++){
13 s1[i]=(s1[i-1]+3LL*i*i)%mod;
14 s2[i]=(s2[i-1]+3LL*i+1)%mod;
15 if (!vis[i]){
16 p[++p[0]]=i;
17 phi[i]=i-1;
18 }
19 for(int j=1;(j<=p[0])&&(i*p[j]<N-4);j++){
20 vis[i*p[j]]=1;
21 if (i%p[j])phi[i*p[j]]=phi[i]*(p[j]-1);
22 else{
23 phi[i*p[j]]=phi[i]*p[j];
24 break;
25 }
26 }
27 }
28 scanf("%d",&T);
29 while (T--){
30 scanf("%s",s);
31 ll n=0;
32 for(int i=0;s[i];i++)n=n*10+(s[i]-'0');
33 for(m=1;(ll)m*m*m<=n;m++);
34 m-=2;
35 int ans=0;
36 for(int i=1;i<=m+1;i++)
37 if ((m+1)%i==0)ans=(ans+(n/i-((ll)(m+1)*(m+1)*(m+1)-1)/i)%mod*phi[i])%mod;
38 for(int i=1;i<=m;i++)ans=(ans+1LL*phi[i]*(1LL*i*s1[m/i]+s2[m/i]+mod))%mod;
39 printf("%d\n",ans);
40 }
41 }
[hdu6588]Function的更多相关文章
- 通过百度echarts实现数据图表展示功能
现在我们在工作中,在开发中都会或多或少的用到图表统计数据显示给用户.通过图表可以很直观的,直接的将数据呈现出来.这里我就介绍说一下利用百度开源的echarts图表技术实现的具体功能. 1.对于不太理解 ...
- jsp中出现onclick函数提示Cannot return from outside a function or method
在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...
- JavaScript function函数种类
本篇主要介绍普通函数.匿名函数.闭包函数 目录 1. 普通函数:介绍普通函数的特性:同名覆盖.arguments对象.默认返回值等. 2. 匿名函数:介绍匿名函数的特性:变量匿名函数.无名称匿名函数. ...
- 在ubuntu16.10 PHP测试连接MySQL中出现Call to undefined function: mysql_connect()
1.问题: 测试php7.0 链接mysql数据库的时候发生错误: Fatal error: Uncaught Error: Call to undefined function mysqli_con ...
- jquery中的$(document).ready(function() {});
当文档载入时执行function函数里的代码, 这部分代码主要声明,页面加载后 "监听事件" 的方法.例如: $(document).ready( $("a") ...
- Function.prototype.toString 的使用技巧
Function.prototype.toString这个原型方法可以帮助你获得函数的源代码, 比如: function hello ( msg ){ console.log("hello& ...
- 转:ORA-15186: ASMLIB error function = [asm_open], error = [1], 2009-05-24 13:57:38
转:ORA-15186: ASMLIB error function = [asm_open], error = [1], 2009-05-24 13:57:38http://space.itpub. ...
- [Xamarin] 透過Native Code呼叫 JavaScript function (转帖)
今天我們來聊聊關於如何使用WebView 中的Javascript 來呼叫 Native Code 的部分 首先,你得先來看看這篇[Xamarin] 使用Webview 來做APP因為這篇文章至少講解 ...
- Oracle数据库自动备份SQL文本:Procedure存储过程,View视图,Function函数,Trigger触发器,Sequence序列号等
功能:备份存储过程,视图,函数触发器,Sequence序列号等准备工作:--1.创建文件夹 :'E:/OracleBackUp/ProcBack';--文本存放的路径--2.执行:create or ...
随机推荐
- 缓冲区溢出利用与ShellCode编写
一.实验目的 熟悉编写shellCode的流程 掌握缓冲区溢出的利用 二.实验环境 系统环境:Windows环境 软件环境:C++ ,缓冲区溢出文件链接 三.实验原理 要实施一次有效的缓冲区溢出攻击, ...
- 暑期 2021 | Serverless Devs 最全项目申请攻略来啦!
Serverless 是近年来云计算领域热门话题,凭借极致弹性.按量付费.降本提效等众多优势受到很多人的追捧,各云厂商也在不断地布局 Serverless 领域.但是随着时间的发展,Serverles ...
- 遇到括号就是栈(bushi)
CF508E Arthur and Brackets 我在赛场上想都没想直接DP \(O(n^3)\)过了 但别人说正解是栈+贪心 讲讲DP \(bool\) \(dp[i][j]\)表示从第i对括号 ...
- NOIP2012提高组初赛NB题
本题中,我们约定布尔表达式只能包含 p, q, r 三个布尔变量,以及"与"(∧)."或"(∨)."非"(¬)三种布尔运算.如果无论 p, ...
- k8s学习笔记(1)- 简单部署springboot应用
前言:k8s全称kubernetes,k8s是为容器服务而生的一个可移植容器的编排管理工具,越来越多的公司正在拥抱k8s,并且当前k8s已经主导了云业务流程,关于更多的k8s知识,可自行学习 1.k8 ...
- Linux环境下安装java的方法
linux安装java步骤 方式一:yum方式下载安装 1.查找java相关的列表 yum -y list java* 或者 yum search jdk 2.安装jdk yum install ja ...
- 一个简单的单例模式Demo
/** * @author :nx014924 * @date :Created in 5/30/2021 1:09 PM * @description: * @modified By: * @ver ...
- Java(47)反射
作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15201675.html 博客主页:https://www.cnblogs.com/testero ...
- python爬虫时,解决编码方式问题的万能钥匙(uicode,utf8,gbk......)
转载 原文:https://blog.csdn.net/xiongzaiabc/article/details/81008330 无论遇到的网页代码是何种编码方式,都可以用以下方法统一解决 imp ...
- Bootstrap响应式的导航栏
Bootstrap 导航栏 | 菜鸟教程 <!DOCTYPE html> <html> <head> <meta charset="utf-8&qu ...