BestCoder
Round #90

A  Kblack
loves flag

题意有点迷不造思路很简单但不造怎么求随机数,纠结了一会后直接粘上题目所给的代码稍加修改A了。

const int _K=50268147,_B=6082187,_P=100000007;
int _X;
inline int get_rand(int _l,int _r){
_X=((long long)_K*_X+_B)%_P;
return _X%(_r-_l+1)+_l;
}
int n,m,k,seed,xx,yy;
int x[1000006],y[1000006],vx[N],vy[N];
void Init(){
memset(vx,0,sizeof(vx));
memset(vy,0,sizeof(vy));
scanf("%d%d%d%d",&n,&m,&k,&seed);
_X=seed;
xx=n,yy=m;
for (int i=1;i<=k;++i)
{
x[i]=get_rand(1,n);
y[i]=get_rand(1,m);
if(!vx[x[i]])
{
vx[x[i]]=1;
xx--;
}
if(!vy[y[i]])
{
vy[y[i]]=1;
yy--;
}
}
printf("%d %d\n",xx,yy); }
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
Init();
}
return 0;
}

B dingyeye
loves stone

题意:一颗根节点为0的有根树,每个节点上有一定的石子数,每次可以选一个节点上一定数量(不能为0)的石子转移到他的父亲节点上,最后不能移的算输。

思路:设根节点的深度为00,将所有深度为奇数的节点的石子数目xor起来,则先手必胜当且仅当这个xor和不为00。
证明同阶梯博弈。对于偶深度的点上的石子,若对手移动它们,则可模仿操作;对于奇深度上的石子,移动一次即进入偶深度的点。 时空复杂度O(n)O(n)。

说实话差一点接近了正确答案了,已经推出来和深度有关,但深搜结果方向错了,围绕nim博弈转化即可。

const int N=1e6+7;
int a[N],f[N],v[N];
int main()
{
int t,n;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
memset(v,0,sizeof(v));
int ans=0;
for(int i=1; i<=n-1; i++)
{
scanf("%d",&f[i]);
if(!v[f[i]]) v[i]=1;//深度为奇数的节点标记起来;
}
for(int i=0; i<=n-1; i++)
{
scanf("%d",&a[i]);
// printf("%d %d\n",i,v[i]);
if(i&&v[i]) ans^=a[i];
}
if(ans) printf("win\n");
else printf("lose\n");
}
return 0;
}

暂时先pou上这两题,以后再补!这场只A了一题居然涨分了,手残hack unsuccessful一发。。

BestCoder Round #90 A+B题解!的更多相关文章

  1. BestCoder Round #90 //div all 大混战 一题滚粗 阶梯博弈,树状数组,高斯消元

    BestCoder Round #90 本次至少暴露出三个知识点爆炸.... A. zz题 按题意copy  Init函数 然后统计就ok B. 博弈 题  不懂  推了半天的SG.....  结果这 ...

  2. BestCoder Round #11 (Div. 2) 题解

    HDOJ5054 Alice and Bob Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/O ...

  3. BestCoder Round #90

    有生以来第一场在COGS以外的地方打的比赛.挂成dog了. 主要是没有经验,加之代码能力过弱.还有最后的瞎hack三次,Too Young Too Simple...... 言归正传. (抄一发题解先 ...

  4. BestCoder Round #90 A.Kblack loves flag(随机数生成种子)

    A.Kblack loves flag [题目链接]A.Kblack loves flag [题目类型]水题 &题意: kblack喜欢旗帜(flag),他的口袋里有无穷无尽的旗帜. 某天,k ...

  5. HDU 5996 dingyeye loves stone ---BestCoder Round #90

    题目链接 设根节点的深度为0,将所有深度为奇数的节点的石子数目xor起来,则先手必胜当且仅当这个xor和不为0. 证明同阶梯博弈.对于偶深度的点上的石子,若对手移动它们,则可模仿操作:对于奇深度上的石 ...

  6. HDU 5995 Kblack loves flag ---BestCoder Round #90

    题目链接 用两个布尔数组分别维护每个行/列是否被插过旗帜,最后枚举每一行.列统计答案即可.空间复杂度O(n+m),时间复杂度O(n+m+k). #include <cstdio> #inc ...

  7. HDU - 5996 树上博弈 BestCoder Round #90

    就是阶梯NIM博弈,那么看层数是不是奇数的异或就行了: #include<iostream> #include<cstdio> #include<algorithm> ...

  8. bestcoder Round #7 前三题题解

    BestCoder Round #7 Start Time : 2014-08-31 19:00:00    End Time : 2014-08-31 21:00:00Contest Type : ...

  9. BestCoder Round #11 (Div. 2) 前三题题解

    题目链接: huangjing hdu5054 Alice and Bob 思路: 就是(x,y)在两个參考系中的表示演全然一样.那么仅仅可能在这个矩形的中点.. 题目: Alice and Bob ...

随机推荐

  1. Git命令---递归克隆

    git clone --recursive https://github.com/rbgirshick/fast-rcnn.git Git命令 --recursive 会递归克隆fast-rcnn项目 ...

  2. LVS集群-DR模式

    同上个实验一样,还是准备三台机器 分发器(sishen_63):eth0 192.168.1.63 RealServer1sishen_64) RealServer2sishen_65) 首先配置网卡 ...

  3. JS执行保存在数据库中的JS代码

    function createScript(script) { var myScript = document.createElement("script"); myScript. ...

  4. nginx配置参考

    server { listen 443 ssl; server_name apps.qimeng.fm; #charset koi8-r; #证书 ssl_certificate /usr/local ...

  5. /usr/bin/install -c -m 644 sample-config/httpd.conf /etc/httpd/conf.d/nagios.conf

    [root@localhost nagios]# make install-webconf/usr/bin/install -c -m 644 sample-config/httpd.conf /et ...

  6. nginx,php-fpm的安装配置

    在centos7.2的系统下安装nginx和php-fpm nginx 安装 yum install -y nginx 即可完成安装 配置 由于之前项目使用的是apache,所以项目目录在var/ww ...

  7. LINUX 安装tsung 对OPENFIRE 进行压力测试

    参考资料:  http://www.centoscn.com/image-text/install/2014/0818/3503.html  http://my.oschina.net/jieluck ...

  8. makefile vpath变量

    在讲vpath之前,我们首先了解以下makefile文件. 在类Unix系统中,当我们使用源码编译某个软件的时候,我们会使用confiure,make,make install这三个命令,其中cofi ...

  9. Android(java)学习笔记177: 服务(service)之音乐播放器

    1.我们播放音乐,希望在后台长期运行,不希望因为内存不足等等原因,从而导致被gc回收,音乐播放终止,所以我们这里使用服务Service创建一个音乐播放器. 2.创建一个音乐播放器项目(使用服务) (1 ...

  10. Unity查找物体的四大主流方法及区别

    GameObject.Find()优点: 使用简单方便不会因为重名而报错,同时查找的是自上而下的第一个物体缺点 不能查找被隐藏的物体,否则出现“空引用异常”,这是很多新人在查找出现空引用bug的原因. ...