博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CodeForces - 1064B Equations of Mathematical Magic(打表找规律)
阅读量:2136 次
发布时间:2019-04-30

本文共 837 字,大约阅读时间需要 2 分钟。

题目大意:

      给出a,要求找出a−(a⊕x)−x=0的非负整数解x的个数

题解:

     做的时候打出了表但却没有很快想到正确的规律

只觉得是

2,4,4,8、2,4,4,8、4,8,8,16

2,4,4,8、4,8,8,16

4,8,8,16

16

      经提点后才知道,是这个数的二进制中含的1的个数的2倍。

 

     还有一点,异或运算^的优先级很低,要用括号括起来运算。

#include
#include
#include
#define maxx 1005using namespace std;#define ll long longint main(){ int T; cin>>T; while(T--) { ll ans=1; ll a; cin>>a; while(a) { if(a&1)ans*=2; a>>=1; } cout<
<

打表程序

#include
#include
using namespace std;typedef long long ll;int main(){ for(int n=1;n<=1000;++n) { ll ans=0; for(ll j=0;j<=n;++j) if((n-(n^j))==j)//注意这里^要括起来 ans++; bitset<20> x(n); cout<
<<"---"<
<<"------"<
<

 

转载地址:http://qkfgf.baihongyu.com/

你可能感兴趣的文章
【LEETCODE】36-Valid Sudoku
查看>>
【LEETCODE】205-Isomorphic Strings
查看>>
【LEETCODE】204-Count Primes
查看>>
【LEETCODE】228-Summary Ranges
查看>>
【LEETCODE】27-Remove Element
查看>>
【LEETCODE】66-Plus One
查看>>
【LEETCODE】26-Remove Duplicates from Sorted Array
查看>>
【LEETCODE】118-Pascal's Triangle
查看>>
【LEETCODE】119-Pascal's Triangle II
查看>>
【LEETCODE】88-Merge Sorted Array
查看>>
【LEETCODE】19-Remove Nth Node From End of List
查看>>
【LEETCODE】125-Valid Palindrome
查看>>
【LEETCODE】28-Implement strStr()
查看>>
【LEETCODE】6-ZigZag Conversion
查看>>
【LEETCODE】8-String to Integer (atoi)
查看>>
【LEETCODE】14-Longest Common Prefix
查看>>
【LEETCODE】38-Count and Say
查看>>
【LEETCODE】278-First Bad Version
查看>>
【LEETCODE】303-Range Sum Query - Immutable
查看>>
【LEETCODE】21-Merge Two Sorted Lists
查看>>