编程题
### 问题描述 小蓝最近在学习位运算知识,这天她在做练习的时候碰到了一个非常有意思的题目,题意如下: 现在有一个正整数 $n$ ,请你计算以下有多少个整数 $y$ 满足:$ 0\leq y \leq n$ 且 $n \bigoplus y = p $ ,其中 $p$ 为质数,$\bigoplus$ 表示异或运算。 小蓝觉得这个题目非常有意思,但是小蓝对于位运算的性质运用还不熟练,请你帮她解决这个问题。 ### 输入格式 输入一行一个整数,代表 $n$ 。 ### 输出格式 输出一行一个整数,代表满足条件的 $y$ 的数目。 ### 样例输入 ```txt 5 ``` ### 样例输出 ```txt 2 ``` ### 说明 对于样例,$5=(101)_2$ ,当 $y=2$ 时 $5 \bigoplus y = 7$ ,当 $y=0$ 时 $5 \bigoplus y=5$ 。所有 $y$ 的值有两种。 ### 评测数据规模 对于 $50$% 的评测数据 $1 \leq n \leq 10^{3}$ 。 对于 $100$% 的评测数据 $1 \leq n \leq 10^{6}$ 。
查看答案
赣ICP备20007335号-2