生之、如舟
生之、如舟
全部文章
分类
动态规划(8)
博弈论(1)
图论(7)
基本算法(29)
并查集(17)
思维(3)
数学(14)
数据结构(5)
数论(18)
最短路(4)
枚举(1)
树状数组(13)
树论(4)
模板(7)
比赛(15)
算法总结(3)
线段树(11)
蓝桥杯(1)
贪心(1)
归档
标签
去牛客网
登录
/
注册
Ryuichi的算法博客
AC
TA的专栏
67篇文章
1人订阅
Ryuichi的算法分享
67篇文章
1416人学习
全部文章
(共6篇)
B. Neko Performs Cat Furrier Transform 【位运算】1300
B. Neko Performs Cat Furrier Transform 解法 目的就是为了让二进制全变成1,那么直接从最高位的0开始,假如最高位的0位置是h,那么就异或(1<<(h+1))-1,当然如果是偶数次操作,就+1这样能够保证2次操作最少可以消除一个0,1e6不到20位...
位运算
2020-11-19
0
641
A. You Are Given Two Binary Strings... 【位运算】1100
A. You Are Given Two Binary Strings... 题解 考虑y的最后一个1的位置,需要刚好把它左移到跟x的一个1匹配,如果左移多了,字典序就增加了1,左移少了,就浪费了一些位置可以是0和0匹配从而使得字典序更小 代码 #include <bits/stdc++....
位运算
2020-11-19
0
527
C. Make Good 【位运算】1400
来自专栏
C. Make Good 解法 遍历a数组,把和 跟异或值 都算出来,我们最终要做到的目的是,sum和的二进制 是 异或值yi左移1位得来的。 step1 : 添加yi,这样和就变成了sum+yi,yi就变成了0step2 : 添加sum+yi,这样和就变成了2*(sum+yi),yi就变成了s...
位运算
2020-11-19
0
644
C. Adding Powers 【位运算】1400
来自专栏
C. Adding Powers 解法 因为选择是可以任意位置的,所以相当于数组是无序的。然后k的每次方要么不用,要么用一次。所以将数组里面的每个数转换成k进制,然后用一个cnt[]数组来计算,计算k的每次方出现了多少次。只有所以cnt[i] >= 0 才是yes 代码 #include ...
位运算
2020-11-19
0
692
C. Johnny and Another Rating Drop 【位运算】1400
来自专栏
C. Johnny and Another Rating Drop 解法 这种题,可以先打表找找规律。然后观察发现,每一个数相对于前一个数,都是由其进位得来的,想想一下一个数进位之后就只会把进位位由0变1,右边的1变成0,也就是之后涉及进位的部分发生了反转。就类似于反码+1变补码。现在就能知道任...
位运算
2020-11-19
0
708
B. Rock and Lever 【位运算】1200
B. Rock and Lever 解法 , 只用考虑前面有多少个满足条件。考虑aj最高位1在h,如果ai的最高位在h之前,或者在h之后,那么异或的值都大于并的值,所以要让并且大于异或,就必须是ai的最高位1也在h。 代码 #include <bits/stdc++.h> #defi...
位运算
2020-11-19
0
677