点此看题面

大致题意: 设\(f(x)=\sum[(a*b)|x]\),求\(\sum_{x=1}^nf(x)\)。

转化题意

将题意进行转换,我们就可以发现,我们要求的\(ans\)就是满足\(x*y*z\le n\)的解的个数(这应该还是比较显然的)。

大致思路

此题无非就是一个分类讨论

假设\(a\le b\le c\)。

  • 当三个数全部相等时,求出的解只有一种排列方式。
  • 当三个数中有两个数相等时,求出的解有三种排列方式。
  • 当三个数互不相等时,求出的解共有六种排列方式。

按照这种思路,就能很快速地求出答案了。

注意排除重复的情况。

代码

#include<bits/stdc++.h>
#define LL long long
using namespace std;
LL n;
class Class_MathSolver
{
public:
inline void Solve(LL x)
{
register LL i,j,k,ans=0;
for(i=1;i*i*i<=x;++i) ++ans;//对于三数相等的情况,虽然这样慢,但能避免精度误差
for(i=1;i*i<=x;++i) if((j=x/(i*i))>=i) ans+=3*(j-1);else ans+=3*j;//对于两数相等的情况,注意不能把三数相等的情况包括在内
for(i=1;i*i*i<=x;++i) for(j=i+1;j<=x;++j) if((k=x/(i*j))>=j) ans+=6*(k-j);else break;//对于三数互不相等的情况,同样注意排除重复的情况
printf("%lld\n",ans);
}
}MathSolver;
int main()
{
register int T=0;
while(~scanf("%lld",&n)) printf("Case %d: ",++T),MathSolver.Solve(n);
return 0;
}

【HDU4473】Exam(数学题)的更多相关文章

  1. Linux学习之Exam系统发布

    配置时间:2015年11月27日 配置人:撰写人:微冷的雨   Happy 01.Linux安装图 欢迎页面 桌面 02.Linux命令之文件目录操作 给北大青鸟五道口校区创建三个机房(L4,L5,L ...

  2. ytu 2558: 游起来吧!超妹!(水题,趣味数学题)

    2558: 游起来吧!超妹! Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 7  Solved: 3[Submit][Status][Web Board ...

  3. sdut 2416:Fruit Ninja II(第三届山东省省赛原题,数学题)

    Fruit Ninja II Time Limit: 5000MS Memory limit: 65536K 题目描述 Have you ever played a popular game name ...

  4. python解无忧公主数学题107.py

    python解无忧公主数学题107.py """ python解无忧公主数学题107.py http://mp.weixin.qq.com/s?__biz=MzI5ODE ...

  5. python解无忧公主数学题108

    """ python解无忧公主数学题108回文.py 题目来源: http://mp.weixin.qq.com/s?__biz=MzI5ODEwMDQyNw==& ...

  6. HDU 圆桌会议 - 数学题

    圆桌   题意就是每分钟可以将相邻的两个人的位置互换一下 , 问你 ,几分钟可以将所有人的位置互换成    原先的  B 在A的右边 C在A的左边 , 换成现在的 C 在A 的右边 , B 在 A 的 ...

  7. CF534A Exam 构造

    An exam for n students will take place in a long and narrow room, so the students will sit in a line ...

  8. HDU 2529 Shot (物理数学题)

    题目 解题过程: //物理数学题 #include<stdio.h> #include<string.h> #include<algorithm> using na ...

  9. HDU 2671 Can't be easier(数学题,点关于直线对称)

    题目 //数学题//直线 y = k * x + b//直线 ax+by+c=0; 点 (x0,y0); 点到直线距离 d = (ax0+by0+c)/sqrt(a^2+b^2) /********* ...

随机推荐

  1. kylin cube 构建过程

    本文是对 http://kylin.apache.org/docs20/howto/howto_optimize_build.html的翻译,以便阅读. 1.  创建 Hive 中间表(Create ...

  2. hdu3830(lca + 二分)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3830 题意: 有三个点 a, b, c, 对于其中任意一点 x 可以跨过一个点移动到另一个位置, 当 ...

  3. git 提交解决本地与远程冲突

    首先介绍一下背景. 如果有一个工程A,开始时test.txt 的内容如下 chenfool hello world 作者通过 git clone 的方式,将这个项目download 到本地. 此时,作 ...

  4. k8s yaml文件详解

    1.yaml格式的Pod配置文件内容及注解 深入Pod之前,首先我们来了解下Pod的yaml整体文件内容及功能注解. 如下: # yaml格式的pod定义文件完整内容: apiVersion: v1 ...

  5. 洛谷P2812校园网络【Network of Schools加强版】

    题目背景 浙江省的几所\(OI\)强校的神犇发明了一种人工智能,可以\(AC\)任何题目,所以他们决定建立一个网络来共享这个软件.但是由于他们脑力劳动过多导致全身无力身体被\(♂\)掏\(♂\)空,他 ...

  6. ROS上利用usb_cam读取摄像头图像

    电脑需要有USB3.0的接口 我使用的环境为:Ubuntu16.04LTS ROS版本是kinetic 一.usb_cam驱动的安装 1.创建ROS工作空间 mkdir -p myros/src cd ...

  7. myeclipse svn 在线安装

    https://www.cnblogs.com/sxdcgaq8080/p/6000446.html http://subclipse.tigris.org/update_1.8.x

  8. java poi操作创建xslx或xsl文件,存本地和进行网络传输两种方式集成

    package com.java.zxf.util; import java.io.IOException; import java.io.OutputStream; import java.net. ...

  9. 2、kvm基础常用命令操作

    KVM 虚拟机默认的配置文件在 /etc/libvirt/qemu 目录下,默认是以虚拟机名称命名的.xml文件,如下: root@xuedianhu:~# ls /etc/libvirt/qemu ...

  10. Migration-添加表(加外键)

    public partial class _222 : DbMigration { public override void Up() { //DropForeignKey("dbo.Ass ...