问题2346--数论分块

2346: 数论分块

[命题人 : ]
时间限制 : 1 sec  内存限制 : 128 MB

提交

题目描述

众所周知,zbc不擅长数学,所以邀请队友救一下。  
这里需要介绍一个高深的符号:$\%$,它表示的意思是取模($\textit{modulo}$),或者叫取余数,例如:$14$除以$3$等于$4$余$2$,因此$14\%3=2$。  
定义就那么简单,相信你一眼就能看懂,但zbc却看了好久还是一头雾水,所以下面这个和取模有关的问题他就只能求助于你啦!  
计算$\sum_{i=1}^{n}{(n\%i)}$  
推导一下:


因为答案可能很大,因此只需要输出答案需要对$998244353$取模后的结果就好啦,是不是更简单了!

输入

仅一个整数$n$。
1<=n<=1000000000000

输出

一个整数,代表答案对$998244353$取模后的结果。


样例输入 Copy

5

样例输出 Copy

4

提示

$5\% 1=0$,$5\% 2=1$,$5\% 3=2$,$5\% 4=1$,$5\% 5=0$,因此$0+1+2+1+0=4$。


如果没有思路,可以现学一下:【数论】整除分块(数论分块)-CSDN博客
__int128:long long 不够用?详解 __int128 - FReQuenter - 博客园 (cnblogs.com)
代码:在线剪贴板 (nugine.xyz)

来源/分类