P3284 [SCOI2014]方伯伯打扑克

    • 0通过
    • 5提交
  • 题目提供者 洛谷
  • 评测方式 云端评测
  • 标签 2014 四川 高性能
  • 难度 尚无评定
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 体验新版界面

    最新讨论 显示

    推荐的相关题目 显示

    题目描述

    有$2^n$张牌,牌上有数字,依次为$1$~$2^n$,现在要进行洗牌。洗牌方式是:把奇数位上的牌依次抽出,把偶数位上的牌叠在下面。如:12345678-13572468-15263748。

    现有6个数列:$n,x,l,r,t,ans$。其中$ans_i$表示一副$2^{n_i}$张牌的扑克洗了$x_i$次牌后第$l_i$到$r_i$张牌上的值全部加上$t_i$后依次异或的结果$mod 2^{n-1}$的值,同时前5个满足以下递推公式:

    $n_i=(ans_{i-1}+i-1) mod 5+base$

    $l_i=(ans_{i-1}×2+l_{i-1}+i-1)mod2^{n_i}+1$

    $r_i=(ans_{i-1}+1+l_imod2^{\lfloor n_i/2 \rfloor}×2^{\lfloor n_i/2 \rfloor})mod2^{n_i}+1$

    接下来:$if(l_i>r_i)swap(l_i,r_i)$

    $t_i=(l_i+r_i)mod2^{n_i}$

    $x_i=(r_i-l_i+t_{i-1}+i)mod2^{n_i}$

    现在给定$n_0,x_0,l_0,r_0,t_0$,求$ans_{m-1}$。

    输入输出格式

    输入格式:

    第1行包含1个整数m,表示数据个数接下来1行包含6个整数,分别为n,x,L,r,t,Base

    输出格式:

    输出包含m行,每行1个数,表示最后的答案

    输入输出样例

    输入样例#1: 复制
    2
    5 1 4 27 3 15
    输出样例#1: 复制
    2700

    说明

    m<=5000000,N<=60

    0<L<=R<=2^N

    0<x,t<10^9

    Base<=55

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。