Codeforces 762A

题目大意:

给定两个正整数n,k\((n \le 10^{15},k\leq10^9)\),求n的从小到大的第k个约数,无解输出-1

分析:

我们会自然而然地想到找出n的所有的约数,然后取第k个。
我们发现如果这样的话时间复杂度为\(O(\sqrt{n})\),空间复杂度为\(O(lnn)\)
所以我们暴力上就好了

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
typedef long long ll;
template<typename T>inline void read(T &x){x=0;char ch;bool flag = false;while(ch=getchar(),ch<'!');if(ch == '-') ch=getchar(),flag = true;while(x=10*x+ch-'0',ch=getchar(),ch>'!');if(flag) x=-x;
}
inline ll cat_max(const ll &a,const ll &b){return a>b ? a:b;}
inline ll cat_min(const ll &a,const ll &b){return a<b ? a:b;}
ll a[2000010],cnt1;
ll b[2000010],cnt2;
int main(){ll n,k;read(n);read(k);for(ll i=1;i*i<=n;++i){if(n % i == 0){a[++cnt1] = i;if(i*i != n) b[++cnt2] = n/i;}}if(k > cnt1 + cnt2) puts("-1");else{if(k <= cnt1){printf("%I64d\n",a[k]);}else{k -= cnt1;printf("%I64d\n",b[cnt2-k+1]);}}getchar();getchar();return 0;
}

转载于:https://www.cnblogs.com/Skyminer/p/6351873.html

Codefroces 762A k-th divisor 数论相关推荐

  1. Codeforces Round #697 (Div. 3) (Unrated for Div. 3)全部题解

    题目链接:https://codeforces.com/contest/1475 文章目录 A.Odd Divisor B.New Year's Number C.Ball in Berland D. ...

  2. 最年轻菲尔兹奖得主:我用计算机辅助证明研究“大一统”理论

    水木番 发自 凹非寺 量子位 报道 | 公众号 QbitAI 大名鼎鼎的青年天才数学家,菲尔兹奖得主彼得·舒尔茨最近发了一个博客,宣告他半年前自己提出的一个挑战,已经成功证明出来了. 这项证明是他在& ...

  3. [BZOJ2820]YY的GCD

    题目大意: 对于给定的$n,m(n,m\leq10^7)$,求$为质数\displaystyle\sum_{x=1}^n\sum_{y=1}^m[\gcd(x,y)为质数]$. 思路: 设$p=\gc ...

  4. 数据结构 算法与应用(c++ 描述) 自练答案

    目录 第一章 第二章(时间/空间复杂度) 第三章 第四章 第五章 第六章 第七章 第八章 第九章 第十章 第十一章 第十二章 有不正确请提出                               ...

  5. 独热码状态机、SR锁存器延迟模型、移位除法器模型

    用modelsim仿真基本流程: 一.独热码状态机 代码以及测试代码如下: module ex8_1(clock,reset, x,y1,y2); input clock,reset; input x ...

  6. Divide the Stones

    题目描述 There are n stones numbered from 1 to n. The weight of the i-th stone is i kilograms. We divide ...

  7. Python - 两数相除 递进版

    一.引言 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符.返回被除数 dividend 除以除数 divisor 得到的商.整数除法 ...

  8. GB_T28181-2016.pdf

    国标28181-2016版本检测,由于文件过大,而且博客不支持上传文件,需要GB28181-2016协议文档和公安一所检测文档的可以私信我,QQ:123011785 I C S1 3. 3 1 0 A ...

  9. 2018年东北农业大学春季校赛 K wyh的数列【数论/斐波那契数列大数取模/循环节】...

    链接:https://www.nowcoder.com/acm/contest/93/K 来源:牛客网 题目描述 wyh学长特别喜欢斐波那契数列,F(0)=0,F(1)=1,F(n)=F(n-1)+F ...

  10. zoj 3621 Factorial Problem in Base K 数论 s!后的0个数

    Factorial Problem in Base K Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.zju.edu.cn/onli ...

最新文章

  1. android录像增加时间记录(源码里修改)
  2. struts2上传图片的全过程
  3. 服务器返回的常见的http状态码
  4. 图灵“微软四大技术秘籍”近期出版!
  5. Nginx教程--配置
  6. Fail at Scale
  7. 巧用css实现强制不换行、自动换行、强制换行(转)
  8. 【ubuntu-anaconda-dlib】undefined symbol: _ZTTNSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESa
  9. net core 3.0 之Grpc新特性小试牛刀
  10. 使用Akka简化交易系统
  11. 工作66:动态生成二维码
  12. 提取多个字段_动态合并多个工作表,数据再多也不怕
  13. IDEA的热部署配置
  14. Ubuntu 12.04忘记登录密码及修改密码
  15. [深度学习论文笔记]3D AGSE-VNet: An Automatic Brain Tumor MRI Data Segmentation Framework
  16. IE主页被篡改且无法修改解决方法
  17. 就知道你喜欢中文版:Spread .NET 15.2 FOR WPF
  18. RTC领域首个AI算法大赛 AI in RTC 2019 创新挑战圆满落幕
  19. Don’t Touch What Matters: Task-Aware Lipschitz Data Augmentationfor Visual Reinforcement Learning
  20. 嵌入式系统概论-考试总结

热门文章

  1. MySQL优化详解(二)——数据库架构和使用优化
  2. IS-IS基础网络配置实例
  3. Deepin linux 15.9.1 Ubuntu 16.04 安装zsteg、gem
  4. hdoj--2546--饭卡
  5. Ubuntu16.04下 编译安装 Tensorflow
  6. 盘点欧洲五大智慧城市典范
  7. Windows 7软件及游戏的兼容性
  8. [LeetCode]50.Pow(x, n)
  9. 谈谈 Delphi 的类型与指针[2]
  10. HDU-1045 Fire NetFire Net 最大团