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,同时把…