cf#804 A题题解

1.A题考察的是异或的知识点

       我们知道异或是转化为二进制后每一位数异或1取反,异或0不变,因此有如下性质:a^a==0;

a^0==a;

二进制最后一位是1则为奇数,是0则为偶数。              题面意思是给一个整数n,然后让你写出一组能够满足如下等式的a,b,c的值  a^b+b^c+c^a=n

第一种做法:这时候我们可以找到最简单的一组数,令a=0,b=0,c=x,则有0^0+0^x+x^0=2*x因此就有2*x=n,可以算出x=n/2;意味着只有n是偶数的时候才有解。

所以当n是奇数时输出-1,当n时偶数时输出0,0,n/2;

第二种做法:(我们也可以让a,b,c分别取0,0,0或者1,1,1或者1,0,0或者1,0,1这四种情况,分别带入验证会发现得到的数字n都是偶数,从这里也可以判断n只能取偶数才有解)

以下附上代码:

b11272c811cb4a4cb1028d5b8fc1b6b1.png

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值