BZOJ 3181 BROJ
像我这种SB还是早点退役。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define maxn 1000050
#define inf 1000000000
using namespace std;
long long k,p,prime[maxn],cnt=,tab[maxn],lim,regis,kr=;
bool vis[maxn];
void get_table()
{
tab[]=;
for (long long i=;i<=maxn-;i++)
{
if (!vis[i])
{
tab[i]=i;
prime[++cnt]=i;
if (i==p) lim=cnt;
}
for (long long j=;j<=cnt && i*prime[j]<=maxn-;j++)
{
vis[i*prime[j]]=true;tab[i*prime[j]]=prime[j];
if (!(i%prime[j])) break;
}
}
}
void dfs(long long x,long long ret,long long tag)
{
if (ret>regis) return;
if (x==lim)
{
kr+=regis/ret*tag;
return;
}
dfs(x+,ret,tag);
dfs(x+,ret*prime[x],-tag);
}
long long check(long long x)
{
regis=x/p;kr=;
dfs(,,);
return kr;
}
void work1()
{
k--;
long long ret=;
for (long long i=;i<=maxn-;i++)
{
if (i*p>inf) break;
if (tab[i]>=p) ret++;
if (ret==k) {printf("%lld\n",i*p);return;}
}
printf("0\n");
}
void work2()
{
long long l=,r=inf,ans=-;
while (l<=r)
{
long long mid=l+r>>,ret=check(mid);
if (ret>=k) {ans=mid;r=mid-;}
else l=mid+;
}
if (ans==-) printf("0\n");
else printf("%lld\n",ans);
}
int main()
{
scanf("%lld%lld",&k,&p);
get_table();
if (p>) work1();
else work2();
return ;
}
BZOJ 3181 BROJ的更多相关文章
- BZOJ 3181([Coci2012]BROJ-最小质因子为p的第k小素数)
3181: [Coci2012]BROJ Time Limit: 10 Sec Memory Limit: 64 MB Submit: 26 Solved: 7 [ Submit][ Stat ...
- [SinGuLaRiTy] 组合数学题目复习
[SinGuLaRiTy] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. [CQBZOJ 2011] 计算系数 题目描述 给定一个多项式( ...
- bzoj AC倒序
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...
- BZOJ 2127: happiness [最小割]
2127: happiness Time Limit: 51 Sec Memory Limit: 259 MBSubmit: 1815 Solved: 878[Submit][Status][Di ...
- BZOJ 3275: Number
3275: Number Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 874 Solved: 371[Submit][Status][Discus ...
- BZOJ 2879: [Noi2012]美食节
2879: [Noi2012]美食节 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1834 Solved: 969[Submit][Status] ...
- bzoj3181: [Coci2012]BROJ
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...
- bzoj 4610 Ceiling Functi
bzoj 4610 Ceiling Functi Description bzoj上的描述有问题 给出\(n\)个长度为\(k\)的数列,将每个数列构成一个二叉搜索树,问有多少颗形态不同的树. Inp ...
- BZOJ 题目整理
bzoj 500题纪念 总结一发题目吧,挑几道题整理一下,(方便拖板子) 1039:每条线段与前一条线段之间的长度的比例和夹角不会因平移.旋转.放缩而改变,所以将每条轨迹改为比例和夹角的序列,复制一份 ...
随机推荐
- css -- 题目汇总
1.描述下浮动和它的工作原理.模块浮动,使其脱离文档流,并且生成一个块级框.(所以父级撑不开就得到了很好的解释) 2.清除浮动的方法有那些,分别适用于什么情形.clear , 父级元素overfl ...
- C++格式化输入输出
要实现格式化输入输出,程序需要包含 iostreams 标准标头 <iomanip> 以定义几个各自采用单个参数的操控器. 备注: 其中每个操控器都返回重载 basic_istream&l ...
- poj2676 Sudoku(DFS)
做了很久还是参考了别人的答案orz,其实也不难啊.我要开始学一下怎么写搜索了... 题目链接:poj2676 Sudoku 题解:暴力搜索,DFS每个空白格子所放数字. #include<cst ...
- MATLAB 生成数据保存至文件
% load pyrim % NumTrain = 50; % load machine %NumTrain = 150; % load housing % NumTrain = 300; % loa ...
- 安装VC6提示找不到ACME时的解决办法
将安装程序COPY到电脑上1.打开setupwiz.ini,把"acme=acmboot.exe"改为"=acmsetup.exe";2.STF=setup/v ...
- influxdb和boltDB简介——底层本质类似LMDB,MVCC+B+树
influxdb influxdb是最新的一个时间序列数据库,最新一两年才产生,但已经拥有极高的人气.influxdb 是用Go写的,0.9版本的influxdb对于之前会有很大的改变,后端存储有Le ...
- Jsp开发自定义标签,自定义标签将字符串转成指定的时间格式显示
本例以将 字符串格式的时间转成指定的时间格式显示. 第一步.定义一个标签处理程序类,需要集成javax.servlet.jsp.tagext.TagSupport,代码如下: import java. ...
- 使用BTRACE定位系统中慢的问题
在访问页面请求的时候,如果系统执行效率低,我们怎样才能定位到这些页面请求呢? java 有一个十分有效的动态跟踪工具-btrace 网址:https://kenai.com/projects/bt ...
- 原创:ASP.Net状态管理读书笔记--思维导图
导图文件下载 课前提问几个问题 使用Session 配置 model aspnet_regsql.exe 常见问答 问:为什么Session在有些机器上偶尔会丢失?答:可能和机器的环境有关系,比如:防 ...
- linux系统设置静态IP 查看网卡配置文件
http://jingyan.baidu.com/article/455a99508be7cda167277865.html vi /etc/sysconfig/network-scripts/ifc ...