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的更多相关文章
随机推荐
- 20155321 《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
实验要求 使用JDK编译.运行简单的Java程序: 使用IDEA 编辑.编译.运行.调试Java程序. 实验内容 命令行下Java程序开发 打开windows下的cmd → 输入cd Code命令进入 ...
- 20145234黄斐《Java程序设计》实验二—Java面向对象程序设计
1.提交最后三个测试用例都通过的截图,截图上要有画图加水印,输入自己的学号. 2. 以 TDD的方式研究学习StringBuffer 3.对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步 ...
- Entity Framework for Oracle 基本配置
1.需要安装ODAC 如果不安装ODAC,在数据源连接的配置中,看不到Oracle的选项 我下载安装的组件是32-bit Oracle Data Access Components (ODAC) w ...
- 搜索引擎ElasticSearch系列(一): ElasticSearch2.4.4环境搭建
一:ElasticSearch简介 Elasticsearch is a distributed, RESTful search and analytics engine capable of sol ...
- 《C++设计新思维》勘误,附C++14新解法
勘误: 原书(中文版)3.13节,65-69页中GenScatterHierarchy以及FieldHelper均存在问题,当TypeList中类型有重复时,无法通过编译(原因在于“二义性基类”). ...
- discuz修改附件出售用其他积分,与帖子不一样
现实中我遇到了这种情况,一个资源可以用两种积分购买,于是我决定用售卖贴和出售附件的方式,附件内容与贴内隐藏内容是一样的,但目前discuz的出售主题和附件使用的是同一种积分,有了此修改 1.首先是显示 ...
- 二叉树的深度<java版>
二叉树的结构 二叉树是比较常见的一种的一种数据结构. 首先看看二叉树的数据结构: //由左节点和右节点以及一个节点值构成 public class TreeNode{ TreeNode leftNod ...
- 算法工程师进化-NLP之主题模型
1 引言 主题模型是文本挖掘的重要工具,近年来在学术界和工业届都获得了非常多的关注.学术界的工作主要集中在建模层面,即提出各种各样的主题模型来适应不同的场景,因此缺乏指导主题模型在工业场景落地的资源和 ...
- Teaching Machines to Understand Us 让机器理解我们 之三 自然语言学习及深度学习的信仰
Language learning 自然语言学习 Facebook’s New York office is a three-minute stroll up Broadway from LeCun’ ...
- 启动sshd时,报“Could not load host key”错
原文发表于cu:2016-05-24 现象:启动sshd服务时,虽看似服务启动成功,但客户端并不能连接上sshd服务器端.如下: [root@aefe8007a17d ~]# /usr/sbin/ss ...