#NBMTM1D. 招魂咏叹

招魂咏叹

题目背景

科洛列夫茨基剧院地下,地脉裂口在前方缓缓张开。沃雅妮莎站在裂口边缘,低头看着那些涌动的能量线条,像是在读一份乐谱。

奥黛塔靠在旁边的石柱上,抱着手臂:“你唱就是了。我听着。”

沃雅妮莎没回头,声音里带着一点笑意:“你就站那么远,能听清?”

“能。”

“那我开始了。”

歌声响起,每一道声线都精准地落在该落的地方。奥黛塔没有说话,安静地听着——沃雅妮莎唱歌的时候,她向来是不打断的。

唱完一段,沃雅妮莎停下来,偏过头:“怎么样?”

“还行。”

“还行是什么意思?”

“就是还可以继续的意思。”奥黛塔站直身,往前走了两步,“你唱你的,地脉的状态我盯着。”

沃雅妮莎看了她一眼:“好。”转回身,重新调整呼吸。

歌声再次响起。这一次,整个地下空间都跟着微微震动——像是一颗心脏终于被唤醒,正在一点一点找回自己的节奏。

题目描述

地脉之中,NN 个灵魂沿着能量回路排布。沃雅妮莎的歌声可以穿透地脉,唤醒那些与她的音律共振的灵魂。每两个灵魂都能组合形成一个有序灵魂对 (i,j)(i,j)。

沃雅妮莎想要知道:地脉中所有有序灵魂对 (i,j)(i,j) 的“同频共鸣值”之和,与“双生源点共鸣值”之和,二者加起来是多少。形式化地说,她想知道下面这个式子的结果:

$\displaystyle\sum_{i=1}^{N}\sum_{j=1}^{N}\delta(\gcd(i,j),1) + \displaystyle\sum_{i=1}^{N}\sum_{j=1}^{N}ij\,\delta(i,1)\delta(j,1)$ 。

其中,δ\delta 表示克罗内克德尔塔,具体的:$\delta_{i,j}= \begin{cases} 1,& i=j\\ 0,& i\ne j \end{cases}$

但是,灵魂实在是太多了,结果可能会很大,所以她只需要你输出对 998244353998244353 取模后的结果即可。

输入格式

从文件 summon.in 中读入数据。

一个整数,表示地脉中灵魂的数量 NN。

输出格式

输出到文件 summon.out 中。

对于每组数据,输出一个整数,表示地脉中所有有序灵魂对 (i,j)(i,j) 的“同频共鸣值”之和,与“双生源点共鸣值”之和,二者加起来的结果对 998244353998244353 取模的结果。

样例 1 输入

4

样例 1 输出

12

样例 1 解释

整个式子的结果为 1212 ,对 998244353998244353 取模仍为 1212。

样例 2

见选手目录下的 summon/summon2.in 与 summon/summon2.ans。

样例 3

见选手目录下的 summon/summon3.in 与 summon/summon3.ans。

样例 4

见选手目录下的 summon/summon4.in 与 summon/summon4.ans。

数据范围

对于所有测试数据,保证:1≤N≤1010 1 \le N \le 10^{10}。

数据点 N≤N \le 特殊性质
1∼61 \sim 6 10001000 无
7∼207 \sim 20 101010^{10}