【问题描述】

祖玛是一款曾经风靡全球的游戏,其玩法是:在一条轨道上初始排列着若干个彩色珠子,其中任意三个相邻的珠子不会完全同色。此后,你可以发射珠子到轨道上并加入原有序列中。一旦有三个或更多同色的珠子变成相邻,它们就会立即消失。这类消除现象可能会连锁式发生,其间你将暂时不能发射珠子。

开发商最近准备为玩家写一个游戏过程的回放工具。他们已经在游戏内完成了过程记录的功能,而回放功能的实现则委托你来完成。

游戏过程的记录中,首先是轨道上初始的珠子序列,然后是玩家接下来所做的一系列操作。你的任务是,在各次操作之后及时计算出新的珠子序列。

【输入格式】

第一行是一个由大写字母'A'~'Z'组成的字符串,表示轨道上初始的珠子序列,不同的字母表示不同的颜色。

第二行是一个数字�,表示整个回放过程共有�次操作。

接下来的�行依次对应于各次操作。每次操作由一个数字�和一个大写字母�描述,以空格分隔。其中,�为新珠子的颜色。若插入前共有�颗珠子,则� ∈ [0,�] 表示新珠子嵌入之后(尚未发生消除之前)在轨道上的位序。

【输出格式】

输出共�行,依次给出各次操作(及可能随即发生的消除现象)之后轨道上

第 2 页 共 6 页

P74

的珠子序列。

如果轨道上已没有珠子,则以“-”表示。

【样例输入】

ACCBA 5

1 B

0 A

2 B

4 C

0 A

【样例输出】

ABCCBA

AABCCBA

AABBCCBA

-

A

【样例解释】

你以为山里又有座庙?

游戏玩少了23333 规则想错了

wa成sb2333 错的就不粘了 巨丑2333

代码没写完2333

【问题描述】

栈是一种强大的数据结构,它的一种特殊功能是对数组进行排序。例如,借助一个栈,依次将数组 1,3,2 按顺序入栈或出栈,可对其从大到小排序:

1 入栈;3 入栈;3 出栈;2 入栈;2 出栈;1 出栈。

在上面这个例子中,出栈序列是 3,2,1,因此实现了对数组的排序。

遗憾的是,有些时候,仅仅借助一个栈,不能实现对数组的完全排序。例如给定数组 2,1,3,借助一个栈,能获得的字典序最大的出栈序列是 3,1,2:

2 入栈;1 入栈;3 入栈;3 出栈;1 出栈;2 出栈。

请你借助一个栈,对一个给定的数组按照出栈顺序进行从大到小排序。当无法完全排序时,请输出字典序最大的出栈序列。

【输入格式】

输入共2行。

第一行包含一个整数�,表示入栈序列长度。

第二行包含�个整数,表示入栈序列。输入数据保证给定的序列是1到 n 的全排列,即不会出现重复数字。

【输出格式】

仅一行,共�个整数,表示你计算出的出栈序列。

【样例输入】

3

2 1 3

【样例输出】

3 1 2

【样例解释】

这回山里有座塔。

【数据规模与约定】

简单贪心 闲的写了ST表后缀就好了23333

#include<cstdio>
#define maxn 2000010
using namespace std;
int n,a[maxn],s[maxn],top,now,f[maxn][],P[maxn];
int init(){
int x=,f=;char s=getchar();
while(s<''||s>''){if(s=='-')f=-;s=getchar();}
while(s>=''&&s<=''){x=x*+s-'';s=getchar();}
return x*f;
}
int max(int x,int y){
return x>y?x:y;
}
void Get(){
for(int i=;i<=n;i++)f[i][]=a[i];
for(int j=;j<=;j++)
for(int i=;i+(<<j)-<=n;i++)
f[i][j]=max(f[i][j-],f[i+(<<j-)][j-]);
for(int i=;i<=n;i++)
for(int j=;j<=;j++)
if((<<j)>i){
P[i]=j-;break;
}
}
int Query(int l,int r){
int k=P[r-l+];
return max(f[l][k],f[r-(<<k)+][k]);
}
int main()
{
freopen("haha.in","r",stdin);
freopen("haha.out","w",stdout);
n=init();
for(int i=;i<=n;i++)
a[i]=init();
now=n;Get();
for(int i=;i<=n;i++){
s[++top]=a[i];
while(s[top]==now&&top){
printf("%d ",s[top]);
top--;now--;
}
while(){
int mx=Query(i+,n);
if(mx<s[top]){
printf("%d ",s[top]);top--;
}
else break;
}
}
while(top){
printf("%d ",s[top]);top--;
}
return ;
}

【问题描述】

小 Q 对计算几何有着浓厚的兴趣。他经常对着平面直角坐标系发呆,思考一些有趣的问题。今天,他想到了一个十分有意思的题目:

首先,小 Q 会在�轴正半轴和�轴正半轴分别挑选�个点。随后,他将�轴的点与�轴的点一一连接,形成�条线段,并保证任意两条线段不相交。小 Q 确定这种连接方式有且仅有一种。最后,小 Q 会给出�个询问。对于每个询问,将会

给定一个点�(� ,�),请回答线段 OP 与�条线段会产生多少个交点?

小 Q 找到了正在钻研数据结构的你,希望你可以帮他解决这道难题。

【输入格式】

第1行包含一个正整数�,表示线段的数量;第2行包含�个正整数,表示小 Q 在�轴选取的点的横坐标;

第3行包含�个正整数,表示小 Q 在�轴选取的点的纵坐标;第 4 行包含一个正整数�,表示询问数量;

随后�行,每行包含两个正整数� ,�,表示询问中给定的点的横、纵坐标。

【输出格式】

共�行,每行包含一个非负整数,表示你对这条询问给出的答案。

【样例输入】

3

4 5 3

3 5 4

2

1 1

3 3

【样例输出】

0

3

【样例解释】

然后塔里啥都没有。

裸二分+数学只是判断

#include<cstdio>
#include<cstring>
#include<algorithm>
#define inf 1e9
#define maxn 200010
using namespace std;
int n,m,a[maxn],b[maxn];
struct node{
int x,y;
}p[maxn];
int init(){
int x=,f=;char s=getchar();
while(s<''||s>''){if(s=='-')f=-;s=getchar();}
while(s>=''&&s<=''){x=x*+s-'';s=getchar();}
return x*f;
}
bool Judge(int i,int x,int y){
double Y=(double)p[i].y-(double)x*(double)p[i].y/(double)p[i].x;
return Y<=y;
}
int main()
{
freopen("hahaha.in","r",stdin);
freopen("hahaha.out","w",stdout);
n=init();
for(int i=;i<=n;i++)
a[i]=init();
for(int i=;i<=n;i++)
b[i]=init();
sort(a+,a++n);sort(b+,b++n);
for(int i=;i<=n;i++){
p[i].x=a[i];p[i].y=b[i];
}
n++;p[n].x=inf;p[n].y=inf;
m=init();int x,y;
while(m--){
x=init();y=init();
int l=,r=n,pos=;
while(l<=r){
int mid=l+r>>;
if(Judge(mid,x,y)){
l=mid+;pos=max(pos,mid);
}
else r=mid-;
}
printf("%d\n",pos);
}
return ;
}

10.29 afternoon的更多相关文章

  1. 背水一战 Windows 10 (29) - 控件(文本类): RichTextBlock, RichTextBlockOverflow, RichEditBox

    [源码下载] 背水一战 Windows 10 (29) - 控件(文本类): RichTextBlock, RichTextBlockOverflow, RichEditBox 作者:webabcd ...

  2. 【Selenium】【BugList9】windows环境,fp = open("./"+ time.strftime("%Y-%m-%d %H:%M:%S") + " result.html",'wb'),报错:OSError: [Errno 22] Invalid argument: './2018-09-05 10:29:32 result.html'

    [代码] if __name__=="__main__": suite = unittest.TestSuite() suite.addTest(Baidu("test_ ...

  3. 10.29 正睿停课训练 Day11

    目录 2018.10.29 正睿停课训练 Day11 A 线段树什么的最讨厌了(思路 DFS) B 已经没有什么好害怕的了(差分 前缀和) C 我才不是萝莉控呢(DP 贪心 哈夫曼树) 考试代码 A ...

  4. 第17次Scrum会议(10/29)【欢迎来怼】

    一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华 小组照片 二.开会信息 时间:2017/10/29 17:20~17:42,总计22min.地点:东北师 ...

  5. 2016.10.29初中部上午NOIP普及组比赛总结

    2016.10.29[初中部 NOIP普及组 ]模拟赛 做得好爽! 进度: 比赛:35+45+AC+0=180 改题:AC+AC+AC+0=300 幸运的数 有点无语--之前怕超限,还特意利用程序打了 ...

  6. mybatis-plus的Could not set property 'updateDate' of 'class com.example.pojo.User' with value 'Fri Jul 24 10:29:39 CST 2020' Cause: java.lang.IllegalArgumentException: argument type mismatch解决方案

    按照官网在写mybatis-plus的自动填充功能一直报错,发现官网的解说不全,数据库是datetime类型,java程序又是date,类型不匹配 org.mybatis.spring.MyBatis ...

  7. 2021.10.29 数位dp

    2021.10.29 数位dp 1.数字计数 我们先设数字为ABCD 看A000,如果我们要求出它所有数位之和,我们会怎么求? 鉴于我们其实已经求出了0到9,0到99,0到999...上所有数字个数( ...

  8. 2021.10.29 P1649 [USACO07OCT]Obstacle Course S(BFS)

    2021.10.29 P1649 [USACO07OCT]Obstacle Course S(BFS) 题意: 给一张n*n的图,起点为A,终点为 B,求从A到B转弯次数最少为多少. 分析: 是否存在 ...

  9. 小白的python之路10/29 文件归档

    一打包解包文件 [root@localhost ~]# cd /test/[root@localhost test]# touch a.txt b.txt c.txt[root@localhost t ...

随机推荐

  1. Ed Burns谈HTTP/2和Java EE Servlet 4规范

    在2015年JavaLand大会上,Ed Burns展示了Java EE Servlet 4.0规范(JSR 369)的概要,演讲的重点在于Java EE平台对HTTP/2的支持.HTTP/2旨在解决 ...

  2. Codeforces Round #206 (Div. 2)

    只会做三个题: A:简单题,不解释: #include<cstdio> using namespace std; int k,d; int main() { scanf("%d% ...

  3. Unity 利用Coroutine实现跳动数字效果

    纯粹转载:转载注明参考链接! 参考链接:http://xataxnova.blog.163.com/blog/static/236620063201451061738122/,作者:网易博客 xata ...

  4. Node.js权威指南 (5) - 使用Buffer类处理二进制数据

    5.1 创建Buffer对象 / 705.2 字符串的长度与缓存区的长度 / 725.3 Buffer对象与字符串对象之间的相互转换 / 74 5.3.1 Buffer对象的toString方法 / ...

  5. 双11不再孤单,结识ECharts---强大的常用图表库

    又是一年双十一,广大单身狗们有没有很寂寞(好把,其实我也是)!但是这次的双十一,我不再孤单,因为结识了一个js的强大的图表库---ECharts. 最近做软件工程项目的时候,由于设计图中有柱状图和饼图 ...

  6. 游戏开发设计模式之对象池模式(unity3d 示例实现)

    前篇:游戏开发设计模式之命令模式(unity3d 示例实现) 博主才学尚浅,难免会有错误,尤其是设计模式这种极富禅意且需要大量经验的东西,如果哪里书写错误或有遗漏,还请各位前辈指正. 原理:从一个固定 ...

  7. iOS屏蔽高频点击技巧

    例如高频率点击一个按钮或者TableViewCell,会造成功能多次重复执行,在异步网络请求时候或者多线程时候,造成的问题尤其明显. 解决方法: 声明一个属性self.actionWorking ,标 ...

  8. 公有云开启全面竞争时代——青云QingCloud

    网界网本期[封面报道]公有云开启全面竞争时代 [CNW.com.cn 专稿] 险滩急流之后,公有云[注]服务市场的开拓者们终于看到了一片丰饶之海. 2013年,中国云计算[注]产业起步的第五年,公有云 ...

  9. SonarQube4.4+Jenkins进行代码检查实例之二

    SonarQube4.4+Jenkins进行代码检查实例之二 SonarQube4.4+Jenkins进行代码检查实例之二

  10. 12个强大的Web服务测试工具

    在过去的几年中,web服务或API的普及和使用有所增加. web服务或API是程序或软件组件的集合,可以帮助应用程序进行交互或通过形成其他应用程序或服务器之间的连接执行一些进程/事务处理.基本上有两种 ...