LightOJ 1245
来源:互联网 发布:淘宝卖家售假申诉 编辑:程序博客网 时间:2024/05/21 19:42
解题思路:
先暴力解决sqrt(n)内的数,因为他们连续的数除的商相差较大,之后根号后的数连续除后得到的商不是相等就是差1就可以用公式跳跃式前进(这名字不是很好)
代码:
#include <cstdio> #include<iostream> #include <cstring> #include <cmath> #include <algorithm> #include<vector>using namespace std;typedef long long ll;ll n,m;int main(){int t;scanf("%d",&t);int cas = 1;while(t--){ll ans = 0;scanf("%lld",&n);ll sq = sqrt(n);for(int i=1;i<=sq;i++) ans += n/i;ll to = sq+1,c,d;while(to<=n) {c = n / to; d = n / c + 1; ans += c*(d-to);to = d;}printf("Case %d: %lld\n",cas++,ans);} return 0; }
阅读全文
0 0
- LightOj-1245
- LightOJ 1245
- LightOJ-1245
- LightOJ 1245【数学】
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- [LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- vue 设置cookie
- 身份证验证
- Git带你回到过去和未来【4】#创建、查看、切换分支
- 实验C—2 链栈基本操作压栈与出栈
- Leetcode 3Sum 目前最快解法
- LightOJ 1245
- (M)DFS:207. Course Schedule
- windos平台anoconda下python安装mysql驱动出错
- 【方法】关于递推式的公式求法
- codeforces 441 div2
- 稀疏矩阵快速转置算法分析
- String 构造函数
- C#中error预处理命令的使用
- 以Point类为基础,定义一个平面中的Circle类: 1、编写一个无参的构造函数; 2、编写一个有参的构造函数; 3、在主函数中调用无参的构造函数生成圆的实例c1,调用有参的构造函数生成圆的实