bzoj3674同上(好短)
+强在 就过了
既没有启发式又没有路径压缩,连建树都用的是代码最短的写法(什么心态,每天追求代码短)
话说回来 可持久化的数组感觉只能出类似裸题的题目,,,,藏也藏不住啊
#include <cstdio>
#define mid ((l+r)>>1)
int n,m,time,N=,ca,x,y;
int root[],ls[],rs[],a[];
int change(int x,int y)
{
int l=,r=n,now=++N,past=root[time];
root[++time]=N;
while(l!=r)
if(x<=mid) rs[now]=rs[past],ls[now]=++N,r=mid,now=ls[now],past=ls[past];
else ls[now]=ls[past],rs[now]=++N,l=mid+,now=rs[now],past=rs[past];
a[now]=y;
}
int que(int x)
{
int l=,r=n,now=root[time];
while(l!=r)
if(x<=mid) r=mid,now=ls[now];
else l=mid+,now=rs[now];
return a[now];
}
int get(int p)
{
for(int t=que(p);t!=p;t=que(p)) p=t;
return p;
}
int main()
{
scanf("%d%d",&n,&m);
root[time=]=;
for(int i=;i<=n;i++)
change(i,i);
int start=time,lastans=;
for(int i=;i<=m;i++)
{
scanf("%d%d",&ca,&x);x^=lastans;
if(ca==) root[++time]=root[x+start];
else
scanf("%d",&y),y^=lastans,(ca==)?change(get(y),get(x)):(root[time+]=root[time++],printf("%d\n",get(x)==get(y)));
}
return ;
}
bzoj3674同上(好短)的更多相关文章
- C语言系列之强制类型转换(一)
例子: #include <stdio.h> { char cChar; //字符型变量 short int iShort; //短整型变量 int ilnt; / ...
- Ios拦截手机短信程序
引用 1.手机要越狱,没有越狱的话,下面的可以不用看了! 2.IOS 要5.0以上,4.xx的同上 首先,声明下!由于公司移动开发的项目中,需要根据手机的内容进行逻辑处理,也就是要实现手机短信拦截 ...
- apple iphone 3gs 有锁机 刷机 越狱 解锁 全教程(报错3194,3014,1600,短信发不出去等问题可参考)
以自身经历列步骤如下:(基本思路就是刷6.1.6,越狱,降级基带,解锁) 一.准备工作 1.下载3gs 6.1.6官方固件.地址:http://act.feng.com/wetools/index.p ...
- 短网址API
http://tao.tf/open/ API简介 API允许第三方自由调用URL缩短,基于text/json/jsonp/js模式,支持post.get提交. 支持缩短网址: 淘宝网(*.taoba ...
- Android6.0 源码修改之屏蔽系统短信功能和来电功能
一.屏蔽系统短信功能 1.屏蔽所有短信 android 4.2 短信发送流程分析可参考这篇 戳这 源码位置 vendor\mediatek\proprietary\packages\apps\Mms\ ...
- 重构客户注册-基于ActiveMQ实现短信验证码生产者
重构目标:将bos_fore项目中的CustomerAction作为短信消息生产者,将消息发给ActiveMQ,创建一个单独的SMS项目,作为短信息的消费者,从ActiveMQ获取短信消息,调用第三方 ...
- 短信api接口
1.需要用到的结构 typedef struct _SM_PARAM { char SCA[16];//+8613552678753// 短消息服务中心号码(SMSC地址) char TPA[16]; ...
- Android8.1 源码修改之通过黑名单屏蔽系统短信功能和来电功能
前言 之前写过一篇Android6.0 的屏蔽系统短信功能和来电功能,具体看这里 同样的最近有个新需求,需要将8.1 设备的来电功能和短信功能都屏蔽掉,特殊产品就是特殊定制,那就开始吧. 屏蔽短信功能 ...
- 通过STC15F2K60S2控制SIM900A发中英文短信,打电话
本文通过串口通信,使用STC15系列单片机实现发短信打电话功能. 一. 注意事项 1. 首先要确定手机卡已经注册到网络,具备打电话发短信功能 2. 正确的硬件连接: P3.0-----STXD或者5V ...
随机推荐
- HTML DOM 之<textare>标签
对于DOM元素节点textarea的value值,下面举例说一下. 1. <textarea><textarea> 2.<textarea> <textare ...
- html_随笔
1 <h1> </h> 标题 2 <p> </p> 段落 3 <br /> 换行 4 <!-- ...--> 注释 5 < ...
- JS 格式化当前时间
Date.prototype.format = function(fmt) { var o = { "M+" : this.getMonth()+1, //月份 "d+& ...
- 安装第三方APP好的站点及解除安全与隐私限制
一.解除安全与隐私限制的任何来源. http://bbs.feng.com/read-htm-tid-10714286.html 接下来,我们就打开终端,然后输入以下命令: sudo spctl ...
- C语言中的system函数参数及其作用
函数名: system 功 能: 发出一个DOS命令 用 法: int system(char *command); system函数已经被收录在标准c库中,可以直接调用 system() ...
- appium 滑动
前些日子,配置好了appium测试环境,至于环境怎么搭建,参考:http://www.cnblogs.com/tobecrazy/p/4562199.html 知乎Android客户端登陆:htt ...
- 获取本地的IP地址(内网)
方法一 public static String getLocalIpAddress() { try { for (Enumeration<NetworkInterface> en = N ...
- CorelDRAW x6 X8安装失败解决方法
CorelDRAW x6 X8自定义安装时,到最后经常会出现以下问题: 解决方法如下: 在自定义安装时,出现以下这个界面时,点击红色箭头的地方 将下图红色箭头指向的选项,点击取消,不要选上,即可解决安 ...
- nginx优化
此文章非原创,出自鸟哥之手~ http://blog.chinaunix.net/uid-25266990-id-2985541.html 改排版改得多,当然红色部分要注意下,用得较多 ------- ...
- Mac上搭建Nginx + rtmp
介绍 nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,本人在网上整理了安装流程,分享给大家并且作备忘. 安装步骤 1.先安装brew: /usr/bin/ru ...