19-10-23-K-Aft
没改完题就过来沽博客是不是有点不好……
ZJ一下:
好好好题。
T1数组大小……
$$10^7 \rightarrow 60$$
事实上……
$$7 \times 10^7 \rightarrow 0$$
$kuku$
重点是,我还开了$7\times 10^7$个 vector
一定要检查检查代码,一定要!不要因为数组开小挂部分分,也不要因为数组开大挂全部分
$\huge QAQ$
|
44
|
Miemeng | 0
03:12:34
|
8
03:12:37
|
30
03:12:36
|
38
03:12:37
|
T1
因为$\log$会被卡,于是直接开$B$个队列,这样通过向队尾增加元素来维护单调。
这样就直接优化掉一个$\log$
复杂度:$\Theta(KB)$
(直接开$7 \times 10^7$的就行,作者是不会叫你MLE的=。=)
#include <iostream>
#include <climits>
#include <cstring>
#include <cstdio>
#define B 17
#define LL unsigned long long
#define N 11111111 using namespace std; const LL pri[B]={0,2,3,5,7,11,13,17,19,23,29,31,37,41,43,47};
template<typename Tp>
class Myqueue{
Tp A[N];int f,b;
public:
Myqueue(){f=b=0;}
void clear(){f=b=0;}
void push(const Tp k){A[b++]=k;}
void pop(){f++;}
Tp front(){return A[f];}
bool empty(){return f==b;}
void pour(){
puts("------------");
for(int i=f;i<b;i++)
cout<<A[i]<<" ";
cout<<endl;
puts("------------");
}
};
int kth,b;
Myqueue<LL>qs[B];
void prerun(){
for(int i=1;i<=b;i++)qs[i].push(pri[i]);
}
main(){
cin.sync_with_stdio(false);
cin>>b>>kth;
prerun();
int cnt=1;
LL minn;
while(cnt<kth){
// if(cnt>850000)\
for(int i=1;i<=b;i++){\
cout<<pri[i]<<":\n";\
qs[i].pour();\
}
minn=LLONG_MAX;
int id;
for(int i=1;i<=b;i++){
if(!qs[i].empty()&&minn>qs[i].front()){
minn=qs[i].front();
id=i;
}
}
qs[id].pop();
cnt++;
for(int i=id;i<=b;i++){
qs[i].push(minn*pri[i]);
}
}
cout<<minn<<endl;
}
T2
没有过,
但是可以传($zhu\grave{a}n$)达题解思想。
首先使用记忆化搜索,
状态由两部分组成,
当前队列中总共有的质因子情况,
有共同因子的数在质因子层面上的数对情况。
用第二个来保证不会有三个数有共同的质因子。
(说实话我不会)
T3
又没有过
很神奇的一道题,因为有错的,但不超过$1 \over 2$
于是使用随机化,每两个坐标对可以求出一组可能解。
$check$一下,尝试$50$次,
非酋全没找到正解的概率$(\frac{3}{4})^{50} \approx 0.000000566$
19-10-23-K-Aft的更多相关文章
- 10.23 正睿停课训练 Day7
目录 2018.10.23 正睿停课训练 Day7 A 矩形(组合) B 翻转(思路) C 求和(思路 三元环计数) 考试代码 B1 B2 C 2018.10.23 正睿停课训练 Day7 期望得分: ...
- 19.10.14-Q
小$P$的咕事 总结: 还行,就是$T1$写的慢了,$T2,T3$暴力有点锅 T1 小模拟. 打就是了. 可以小小的手玩一下. (考试的时候某同志人肉对拍了$20min$)=.= 418 ms 360 ...
- 背水一战 Windows 10 (23) - MVVM: 通过 Binding 或 x:Bind 结合 Command 实现,通过 ButtonBase 触发命令
[源码下载] 背水一战 Windows 10 (23) - MVVM: 通过 Binding 或 x:Bind 结合 Command 实现,通过 ButtonBase 触发命令 作者:webabcd ...
- cat hesA/Models/score_tgt.sc| awk '{ print $2,$19}' | sort -n -k 1
cat hesA/Models/score_tgt.sc| awk '{ print $2,$19}' | sort -n -k 1 print the second collum in order
- 给定整数a1、a2、a3、...、an,判断是否可以从中选出若干个数,使得它们的和等于k(k任意给定,且满足-10^8 <= k <= 10^8)。
给定整数a1.a2.a3.....an,判断是否可以从中选出若干个数,使得它们的和等于k(k任意给定,且满足-10^8 <= k <= 10^8). 分析:此题相对于本节"寻找满 ...
- Daily Scrum 10.23
(写于10.22周四) 说下现在的人员情况: 康家华请假至下周一,刘彦熙至周五18:00,张启东至周六中午. 其他人正常工作. 然后是现在的进度情况: 已经完成服务器数据库搭建,以及基础的注册登陆功能 ...
- Ubuntu 19.10 发布 | 云原生生态周报 Vol. 24
作者 | 木苏.进超.冬岛.元毅.心水.衷源 业界要闻 1.云原生编程语言 Pulumi 1.0 pulumi ,一款中立的开源云开发平台,Pulumi 支持多语言.混合云环境.完全可扩展.初期支持 ...
- [Linux] 在 Ubuntu 19.10 上开启 SSH 服务并允许远程登录
在 Ubuntu 19.10 上安装 SSH,并开启服务 0.检查并确认系统当前是否已安装SSH: sudo ps -e | grep ssh 如果只有 ssh-agent 说明 ssh-server ...
- [Linux] 树莓派 4B 安装 Ubuntu 19.10 (Eoan Ermine) IOT 版
硬件:Raspberry Pi 4B系统:Ubuntu 19.10 (Eoan Ermine) for IOT官网:https://ubuntu.com/download/iot/raspberry- ...
- Ubuntu 19.10 安装 jupyter
安装pip3 ubuntu 19.10 已经没有python了,取代的是python3. 执行sudo apt install python3-pip安装pip3 安装jupyter 执行sudo p ...
随机推荐
- helm安装kubernetes的插件istio
1.安装istio 要使用Helm自定义Istio安装,请使用--set <key>=<value>Helm命令中的选项覆盖一个或多个值 怎么使用选项配置请查看官网https: ...
- JavaScript中的表单编程
表单编程 1获取表单相关信息 1.什么是表单元素 1.什么是表单元素 在H TML中表单就是指form标签,它的作用是将用户输入或选择的数据提交给指定的服务器 2.如何获取表单元素 <form ...
- Oracle Spatial导入shp数据
现在开始尝试用oracle spatial管理空间数据,刚学会shp数据的导入,总结如下.oracle11g安装后,已经有了oracle spatial组件,我们只需要用shp2sdo.exe工具,就 ...
- LightOJ-1259-Goldbach`s Conjecture-素数打表+判断素数对数
Goldbach's conjecture is one of the oldest unsolved problems in number theory and in all of mathemat ...
- 12_springmvc拦截器
一.定义 Spring Web MVC 的处理器拦截器类似于Servlet 开发中的过滤器Filter,用于对处理器进行预处理和后处理. 二.拦截器定义 实现HandlerInterceptor接口, ...
- <每日一题>算法题:小球的下落距离
题目:小东和三个朋友一起在楼上抛小球,他们站在楼房的不同层,假设小东站的楼层距离地面N米,球从他手里自由落下,每次落地后反跳回上次下落高度的一半,并以此类推知道全部落到地面不跳,求4个小球一共经过了多 ...
- 收藏的链接-Git
git远程删除分支后,本地git branch -a 依然能看到的解决办法. - qq_763034592的博客 - CSDN博客 https://blog.csdn.net/qq_16885135/ ...
- LeetCode 14.最长公共前缀(Python3)
题目: 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","flow& ...
- https://webpack.js.org/plugins/
有问题还是看源码 ,看官方文档吧,整一晚上终于整明白了
- CF596D Wilbur and Trees
题意:有一些高度为h的树在数轴上.每次选择剩下的树中最左边或是最右边的树推倒(各50%概率),往左倒有p的概率,往右倒1-p. 一棵树倒了,如果挨到的另一棵树与该数的距离严格小于h,那么它也会往同方向 ...