题目背景
Bessie 和大家正坐在刚刚合并完成的牛棚里,跟着 Farmer John 在一起学习循环展开。
Farmer John 说,如果一个循环展开的步长为 8,会对程序效率有很大的提升。
课后,Farmer John 布置了一道题,要求在 1 秒内算出 f(x)=i=1∑x3ω(i)。Bessie 用 20 分钟打了一个 Θ(nlog2nn) 代码,一交直接 TLE。于是,Bessie 来向你求助。
题目描述
她想要求出对于 k∈{0,1,…,7},f(n)=i=1∑n[ω(i)≡k(mod8)]3ω(i) 的值。
上面的算式中,ω(i) 表示 i 含有几种质因子,例如 ω(12)=ω(6)=2,ω(114514)=3。
输入格式
仅一行,包含一个整数 n。
输出格式
共 8 行,分别输出 k=0,1,2,3,4,5,6,7 时 f(n)=i=1∑n[ω(i)≡k(mod8)]3ω(i) 的值。
提示
【数据规模与约定】
|subtask|n≤|所占分值|时间限制|
|:-:|:-:|:-:|:-:|
|1|100|10|500ms|
|2|2×106|20|1000ms|
|3|3×107|20|1000ms|
|4|109|20|4000ms|
|5|1010|30|4000ms|
如果你需要循环展开生成器,请前往附件下载。