精华内容
下载资源
问答
  • Android亦或加密

    2018-09-30 11:01:27
    亦或加密,最简单的加密算法,(代码中需要改变文件路径)
  • Java中亦或运算符

    千次阅读 2019-03-12 12:41:44
    Java中亦或运算符 最近遇到这样一道算法题:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 示例: 输入【2562569】 输出:9 当时毫无解决思路,对亦或...

    Java中亦或运算符

    最近遇到这样一道算法题:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

    示例:
    输入【2562569】
    输出:9

    当时毫无解决思路,对亦或运算毫无了解,经过多方资料查找进行总结
    首先我们先了解下什么是亦或运算符
    1、亦或运算符是一个数学运算符,应用于逻辑算法,符号:" ^ "
    2、有好多小伙伴会被其名字迷惑,亦或是针对于变量在计算机组成的二进制来计算的
    举个例子:假如用 a,b 代替2个变量(可以是数字也可以是任何字符)他们的值分别是5和8,他们的二进制编码分别是:

    在这里插入图片描述
    其中5的二进制为101
    8的二进制为1000
    亦或遵循规则:
    相同为0:00=0;11=1
    相异为1:10=1;01=1
    0与任何数亦或为其本身
    则5^8 二进制结果为1101(值为13)不会可以看看二进制的运算
    由此可得:两个相同的数例如:6^6 由于他们在计算机中的二进制相同所以结果为0,0与任何数亦或得本身(例如:0 ^ 9得到9)
    3、对于上面示例找9的题你是否有答案了
    我们可以这样解题:我们把数字按照数学的逻辑交换位置(2^2) ^ (5 ^ 5) ^ (6 ^ 6) ^9 套公式进行技术得到 0 ^ 0 ^0 ^ 9 最后得到 9 本身
    4、用程序实现
    int[] numarry = new int[]{2,5,6,2,5,6,9};
    int only = numarry[0];
    for(int i = 1; i < 7; i++)
    {
    only = only ^ numarry[i];
    }
    System.out.println(“最后:”+only);

    展开全文
  • 初中语文文学讨论现当代文学王家新:真诚亦或虚伪
  • 原地,亦或向左——看网络信息时代给中小摩托车企业带来的契机.pdf
  • 或 与 非 亦或

    千次阅读 2018-08-15 17:40:39
    : 00为0 其它都为1 与 :11为1 其它都为0 异或:同为0,不同为1 非:00为1,其它为0 与非:11为0,其它为1

    或: 00为0 其它都为1

    与 :11为1 其它都为0

    异或:同为0,不同为1

    或非:00为1,其它为0

    与非:11为0,其它为1 

     

    展开全文
  • 算法中的亦或 ^1.亦或的性质 交换律 a^b = b^a 结合律 a^b^c=a^(b^c)=(a^b)^c 0^a=a 0与任何数亦或都是这个数 a^a=0 2.典型应用:2.1 交换两个数a=a^b; b=b^a;(b^a^b=b^b^a=a) a=a^b;((a^b)^a=b)2.2 落单的数对于...

    算法中的亦或 ^

    1.亦或的性质

    1. 交换律 a^b = b^a
    2. 结合律 a^b^c=a^(b^c)=(a^b)^c
    3. 0^a=a 0与任何数亦或都是这个数
    4. a^a=0

    2.典型应用:

    2.1 交换两个数

    a=a^b;
    b=b^a;(b^a^b=b^b^a=a)
    a=a^b;((a^b)^a=b)

    2.2 落单的数

    对于一个整型数组,里面有包含一个单独的数字和其余都是出现两次的数字(或则多次),找出这个单独的数据。对于这个整型数组(亦或运算有交互律和结合律),所以可以变换成所有相同的数在一起运算,全部得到0,然后0与那个单独的数据亦或也就得到了单独的数据。

    展开全文
  • ①首先我们知道,亦或x之后得到的数组将其再亦或y值得的数组,其实就是原数组亦或(x^y)的结果。所以这里我们没有必要将原数组进行变化。 ②我们还知道,如果有:z^x=y,其中若x,y已知,那么z是固定的。...

    D. Vitya and Strange Lesson
    time limit per test
    2 seconds
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Today at the lesson Vitya learned a very interesting function — mexMex of a sequence of numbers is the minimum non-negative number that is not present in the sequence as element. For example, mex([4, 33, 0, 1, 1, 5]) = 2 and mex([1, 2, 3]) = 0.

    Vitya quickly understood all tasks of the teacher, but can you do the same?

    You are given an array consisting of n non-negative integers, and m queries. Each query is characterized by one number x and consists of the following consecutive steps:

    • Perform the bitwise addition operation modulo 2 (xor) of each array element with the number x.
    • Find mex of the resulting array.

    Note that after each query the array changes.

    Input

    First line contains two integer numbers n and m (1 ≤ n, m ≤ 3·105) — number of elements in array and number of queries.

    Next line contains n integer numbers ai (0 ≤ ai ≤ 3·105) — elements of then array.

    Each of next m lines contains query — one integer number x (0 ≤ x ≤ 3·105).

    Output

    For each query print the answer on a separate line.

    Examples
    input
    2 2
    1 3
    1
    3
    
    output
    1
    0
    
    input
    4 3
    0 1 5 6
    1
    2
    4
    
    output
    2
    0
    0
    
    input
    5 4
    0 1 5 6 7
    1
    1
    4
    5
    
    output
    2
    2
    0
    2
    

    题目大意:


    给出一个数组,每次操作将整个数组亦或一个数x,问得到的数组的结果中的mex.mex表示为自然数中第一个没有出现过的数。


    思路:

    ①首先我们知道,亦或x之后得到的数组将其再亦或y值得的数组,其实就是原数组亦或(x^y)的结果。所以这里我们没有必要将原数组进行变化。


    ②我们还知道,如果有:z^x=y,其中若x,y已知,那么z是固定的。那么我们可以根据这个特性,我们将问题翻转一下。

    我们将原数组中不存在的数入树。那么对于每一个查询temp,其实就相当于我们在树上找一个值,使得这个值亦或temp最小。

    引入了这个逆向思维之后,我们就变成了贪心find。


    ③过程维护一下即可。注意入树的数值范围。


    Ac代码:

    #include<stdio.h>
    #include<string.h>
    #include<map>
    #include<algorithm>
    #include<math.h>
    #include<stdlib.h>
    using namespace std;
    #define ll long long int
    #define maxn 2
    typedef struct tree
    {
        tree *nex[maxn];
        ll v;
        ll val;
    } tree;
    tree root;
    void init()
    {
        for(ll i=0; i<maxn; i++)
        {
            root.nex[i]=NULL;
            root.v=0;
            root.val=0;
        }
    }
    void creat(char *str,int va)
    {
        int len=strlen(str);
        tree *p=&root,*q;
        for(int i=0; i<len; i++)
        {
            int id=str[i]-'0';
            if(p->nex[id]==NULL)
            {
                q=(tree *)malloc(sizeof(root));
                q->v=1;
                for(int j=0; j<2; j++)
                {
                    q->nex[j]=NULL;
                }
                p->nex[id]=q;
            }
            else
            {
                p->nex[id]->v++;
            }
            p=p->nex[id];
            if(i==len-1)
            {
                p->val=va;
            }
        }
    }
    void find(char *str,ll query)
    {
        ll len=strlen(str);
        tree *p=&root;
        for(ll i=0; i<len; i++)
        {
            ll id=str[i]-'0';
            if(p->nex[id]!=NULL)
            {
                p=p->nex[id];
            }
            else p=p->nex[1-id];
            if(p==NULL)return ;
        }
        printf("%lld\n",p->val^query);
    }
    int main()
    {
        ll n,q;
        while(~scanf("%lld%lld",&n,&q))
        {
            init();
            map<ll,ll>s;
            for(ll i=1; i<=n; i++)
            {
                ll x;
                scanf("%lld",&x);
                if(s[x]==0)
                {
                    s[x]=1;
                }
            }
            for(ll i=0; i<=600000; i++)
            {
                if(s[i]==0)
                {
                    char ss[25];
                    ll x=i; 
                    ss[21]='\0';
                    for(int j=20; j>=0; j--)
                    {
                        if(x)
                        {
                            ss[j]=x%2+'0';
                            x/=2;
                        }
                        else
                        {
                            ss[j]='0';
                        }
                    }
                    creat(ss,i);
                }
            }
            ll temp=0;
            while(q--)
            {
                ll x;
                scanf("%lld",&x);
                temp^=x;
                x=temp;
                char ss[25];
                ss[21]='\0';
                for(int j=20; j>=0; j--)
                {
                    if(x)
                    {
                        ss[j]=x%2+'0';
                        x/=2;
                    }
                    else
                    {
                        ss[j]='0';
                    }
                }
                find(ss,temp);
            }
        }
    }
    










    展开全文
  • 纪念张孝祥 -执着 多思多产多理想

    万次阅读 多人点赞 2012-01-08 21:33:18
    “十几年来,我一直在践行着这一个格言,我和我们的团队的梦想就是要竭尽我们所能来改变整个中国的软件教育,让所有学习软件的人都能直接间接地得到我们的帮助, 让他们能够更快更好地成才。我们认为:如果我们...
  • 回首2020,是成长,是挑战(学生版)

    千次阅读 多人点赞 2020-12-29 08:33:28
    我的读者,你好!当你进入我的这篇文章的时候,你是否好奇我的2020年的经历呢?...亦或你是技术大牛,可称为我的“老师”,毕竟“闻道有先后,术业有专攻”和“三人行,必有我师焉”,我也期待您的多多指教。
  • 欢迎意见建议,喜欢不妨点个star。 搜 多种来源,有发现,可搜索 看 看文字,看小说,看图片,看壁纸,看漫画,看视频 闻 听故事,听有声,听音乐,听英语 你所想,你所能 更多功能由君发挥,待君开发。...
  • 电新行业动态点评:硅料紧缺贯穿全年,2022年难言宽松.pdf
  • 有色金属行业周报:微观将进入传统旺季,宏观偏暖,景气延续
  • 有色金属行业周报:微观将进入传统旺季,宏观偏暖,景气延续.pdf
  • 20210327-中泰证券-有色金属行业周报:微观将进入传统旺季,宏观偏暖,景气延续.pdf
  • 为之,则难者易;不为,则易者难矣。  [译文] 天下事有困难和容易的区别吗?只要去做,那么困难的也容易了;不做,那么容易的也困难了。  [出典] 清 彭端淑《为学》  原文:为学 [清]彭端淑  天下事...
  • 4n25 光耦合器(opticalcoupler,英文缩写为OC)称光电隔离器光电耦合器,简称光耦
  • 有时候在android开发中我们会用到adb命令行,但很多人在cmd中输入adb命令后,会出现'adb'不是内部外部命令,不是可运行程序和批处理文件的问题解决办法是:找到SDK目录,在其子目录platform-tools中找到adb,exe...
  • 有时候在android开发中我们会用到adb命令行,但很多人在cmd中输入adb命令后,会出现'adb'不是内部外部命令,不是可运行程序和批处理文件的问题 解决办法是:找到SDK目录,在其子目录platform-tools中找到adb,exe...
  • 「追光者」沈

    千次阅读 2019-03-08 11:45:39
    其实,光被应用在计算机环境中已经有数十年历史,过去主要用在不同芯片存储设备间传输数据之用。光子具有比电子更快、能耗更低等特点,但是在深度学习爆发之前,光学计算非常具有挑战性,因为人们很难在光学上模拟...
  • 各种原因在课下,甚至是后来的大三大四还多次请教赵老师关于专业发展方向的问题,他总是特别细心平和的给我解答和建议,人生中有这样一位师长应当是自己 的福分,偶尔也听他说起他对教学,对电子院创新实验室的...
  • 从抄书到开源之巅:章春的程序人生

    千次阅读 多人点赞 2018-04-02 00:00:00
    作者:章春来自:图灵访谈(ID:ituring_interview)春哥的编程之旅起于抄书,就算如今已是罕见的编程高手,春哥依然逢人大力推荐他的抄书学编程之法。春哥先后在中国雅虎、淘宝、Cloudflare 就职,但开源世界是他...
  • OpenCL中要注意volatile的使用

    千次阅读 2011-01-11 23:41:00
    在OpenCLCUDA中,对全局共享变量的访问我们往往会忽略掉使用volatile,这在仅对其访问一次的时候不会有问题,但是对这个共享变量变量做第二次访问的话,那么它会被编译器优化,从而得到的一直是第一次被引用时的值...
  • 同志凡人 第五季 Queer as Folk Season 5 (2005) 本季看点:这是一群生活在匹兹堡男人和男人,女人和女人的故事。在他们的王国里有各色人物。王国的国王Brian(葛尔?哈罗德 Gale Harold 饰),只追求性不问爱...
  • Android 常用的数据加密方式

    千次阅读 2017-06-22 15:46:08
    在android 中一般的加密方式有如下: 亦或加密 AES加密 RSA非对称加密 当然还有其他的方式,这里...亦或加密是对某个字节进行亦或运算,比如字节 A^K = V,这是加密过程; 当你把 V^K得到的结果就是A,也就是 V^K = A,这
  • 上周,有媒体报道黑客利用 SolarWinds Orion 漏洞攻击美多个机构,影响 18,000 个用户。此后,SolarWinds 遭黑客入侵事件持续发酵。《华尔街日报》现在报道,一些大型科技公司也受到了感染。 《华尔街日报》的最新...
  • 金圣叹“不快哉”三十三则

    千次阅读 2005-04-12 14:55:00
    其一:夏七月,赫日停天,无风,无云;前后庭赫然如洪炉,无一鸟敢来飞。 汗出遍身,纵横成渠。置饭于前,不可得吃。呼簟欲卧地上,则地湿如膏,苍蝇又来缘颈附鼻,驱之不去,正莫可如何,忽然大黑车轴,疾澍...
  • 一般这种问题都是一个类型 函数中的参数是某些特定类型的,而你用了其他类型,当其他类型强制转换都匹配时,则会报错 一句话说就是变量的类型不对 ...//并不是a的b次方,这里是亦或的意思,所以a和b...
  • 七夕节/情人节的浪漫表白HTML礼物(生日可用)

    千次阅读 多人点赞 2019-08-05 23:22:07
    871352155(无论你会C/C++还是Java,Python还是PHP......有兴趣我们都欢迎你的加入,不过还请各位认真填写加群信息) 学习交流需求代码请私聊我或者在我的B站上私聊,当然最好是在B站上,因为我很少看CSDN。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 202,960
精华内容 81,184
关键字:

亦或