zoukankan      html  css  js  c++  java
  • 10.18T1 打表

    DLZ耍蛇

    ProblemBackground

    DLZ一到机房,所有Dalao便都看着他笑,有的叫道,“DLZ,你又要耍蛇了!” 他不回答,跑到全班面前,“这是我从印度进口的灵蛇。”便从兜里掏出九条大蛇。他 们又故意的高声嚷道,“你一定又被石锤了!”DLZ睁大眼睛说,“你怎么这样凭空污 人清白……”“什么清白?我前天亲眼见你在LH面前耍蛇,被吊着打。”DLZ便涨红 了脸,额上的青筋条条绽出,争辩道,“耍蛇被打能叫被锤吗……耍蛇!……读书人的事, 能算石锤么?”接连便是难懂的话,什么“苟币LH”,什么“吃土”之类,引得众人 都哄笑起来:机房内外充满了快活的空气。

    Problem Discrioption

    DLZ的蛇可被分为若干段,第i段蛇的灵力为iDLZ使用的是传统耍蛇法,他每 一次耍蛇从LR的一段,耍蛇之后,蛇会减少LR的灵力和。由于某些特殊原因, 灵力是用异或求和的。如果不能及时补充,蛇就挂了,DLZ数学太菜了,为了拯救他的 蛇,他向你求助。

    Input

    两个整数LRL<R

    Output

    一个整数表示LR的灵力和

    SampleInput

    2 7

    SampleInput

    1

    Data Scale

    测试点编号

    数据规模

    1~4

    L,R1e7

    5~7

    R-L1e7

    8~10

    L,r1e18

    记得我前面的博客的ZYH的XOR吗,一个道理

    不过一个结论是[L,R]=[1,R]^[1,L-1]

    然后就O(1)了

    code:

     1 #include<iostream>
     2 #include<cstdio>
     3 using namespace std;
     4 long long cal(long long a){return a%4==1?1:((a%4==2)?a+1:(a%4==0?a:0));}
     5 int main(){
     6     freopen("snake.in","r",stdin);
     7     freopen("snake.out","w",stdout);
     8     long long l,r;cin>>l>>r;
     9     cout<<(cal(r)^cal(l-1));
    10     return 0;
    11 }

    over

  • 相关阅读:
    Java 执行
    Java 反射
    Mysql 日常
    Java 引用
    Mysql insert on update
    Java Mail 异常
    HDU_5456_数位dp
    HDU_4734_数位dp
    POJ_1221_DP
    POJ_1050_最大子矩阵
  • 原文地址:https://www.cnblogs.com/saionjisekai/p/9809788.html
Copyright © 2011-2022 走看看