HDU4473_Exam
很考验智商的一个题目,赛后看完别人的题解后秒懂了。
首先定义一个函数f(x)表示a,b的有序组合情况数使得a*b为x的一个约数。
现在给定你一个n,要你求出f(1)+f(2)+……+f(n);
题目智商味道太浓厚,本屌表示智商拙计。
可以这样来考虑问题,a*b为x的一个约数,其实就等价于a*b*c=x,c为任意一个正整数。
所以整个问题转化为有多少个有序数对(a,b,c)使得a*b*c不大于n。
到这里问题就变得好办多了。
由于直接枚举复杂度过高,我们在枚举的时候可以假定a<=b<=c,同时把中间a,b,c是否相等的情况都记录下来。
这样在求解答案的时候只要排列一下就可以了。
所以我们在枚举a的时候,只要枚举的范围就是1到n^(1/3),b需要枚举的范围就是n^(1/3)到n^(2/3),这样算来整个题目的时间复杂度为n^(2/3)大约为2*10^7,可以承受的哦。
题目注意统计的时候,尽量避免不必要的运算。
#include <cstdio>
using namespace std;
typedef long long ll;
ll n,m,k,ans,i,j;
int k1,k2,cas=; int main()
{
while (scanf("%I64d",&n)!=EOF)
{
ans=;
for (i=; i*i*i<=n; i++) ;
ans+=--i;
for (; i; i--)
{
m=n/i;
for (j=; j*j<=m; j++) ;
ans+=*(m/i-i+--j-i);
for (; j>i; j--) ans+=*(m/j-j);
}
printf("Case %d: %I64d\n",++cas,ans);
}
return ;
}
HDU4473_Exam的更多相关文章
随机推荐
- Nginx入门篇(二)之Nginx部署与配置文件解析
一.Nginx编译安装 ()查看系统环境 [root@localhost tools]# cat /etc/redhat-release CentOS Linux release (Core) [ro ...
- js灵活处理日期(函实例)
基础方法: var dd = new Date() dd.getFullYear() dd.getMonth() dd.getDate() dd.getDay() //获取星期几(0~6) dd.ge ...
- pyhon3.0 day01 变量、输入、输出、循环
pyhon3.0 基础01 1 python解释器 Python的解释器很多,但使用最广泛的还是CPython.如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython, ...
- [转载]A cycle was detected in the build path of project
解决Eclipse中Java工程间循环引用而报错的问题 如果我们的项目包含多个工程(project),而它们之间又是循环引用的关系,那么Eclipse在编译时会抛出如下一个错误信息: “A cycle ...
- 学习HTML 第二节.HTML头部
HTML为什么要有个头部?还不太明白,可能是一些要提前声明的东西吧.先看看有什么内容吧. 可以添加在头部区域的元素标签为: <title>标题,这个我们知道了: <meta>使 ...
- Tess4J -4.0.2- Linux 实践 [解决:Tess4J - Native library (linux-x86-64/libtesseract.so) not found in resource path]
[本文编写于2018年7月5日] Tess4J是Tesseract的Java JNA wrapper.本文介绍了在CentOS 7 操作系统中使用Tess4J的步骤及注意事项.在正式开始之前,先花一点 ...
- 使用qemu启动dd制作的img镜像
1. 准备工作 应用场景 在需要单机取证时,需要在不影响对象业务的情况下进行取证或分析,可以使用dd 对目标服务器进行镜像,生成img文件,镜像可以通过winhex进行静态分析.但是想要动态分析服务器 ...
- ES6的新特性(14)——Iterator 和 for...of 循环
Iterator 和 for...of 循环 Iterator(遍历器)的概念 JavaScript 原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6 又添加了Ma ...
- BZOJ 4945 NOI2017 游戏 搜索+2-SAT
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=4945 分析: 首先考虑没有x的情况,发现有一个明显的推理模型,容易看出来可以用2-SAT ...
- PSP Daily软件Alpha版本——基于NABCD评论,及改进建议
1.根据(不限于)NABCD评论作品的选题: 此软件的用户人群较为明确,即:用户(软件工程课上学生)记录例行报告.写每周PSP表格和统计的需求.潜在用户还有未来该课堂的学生和需要用PSP方法记录任务完 ...