摘要:
题意:给范围l,r选两个数亦或最大是多少。 思路:找到第一个l和r二进制下不相同的位置i,然后答案就是2^(i+1)-1,因为一个取0一个取1之后,后面的位置全部选1和全部选0,就是这样:01111111...和1000000... 阅读全文
摘要:
http://codeforces.com/contest/526/problem/E 题意:给一个环,每个点有权值,每次给一个数B,求把这个环切割成若干部分,每个部分不超过B,至少要切成几块? 阅读全文
摘要:
http://codeforces.com/contest/335/problem/B 题意: 给定一个长度不超过5*10^4的只包含小写字母的字符串,要求你求它的回文子序列,如果存在长度为100的回文子序列,那么只要输出长度为一百的回文子序列即可,否则输出它的最长回文子序列. 思路:如果n>=26 阅读全文
摘要:
http://www.lydsy.com/JudgeOnline/problem.php?id=2527 思路:整体二分 阅读全文
摘要:
http://codeforces.com/problemset/problem/449/D 题意:给n个数,求and起来最后为0的集合方案数有多少 思路:考虑容斥,ans=(-1)^k*num(k),num(k)代表至少有k个数字and起来为1的方案数,那么怎么求num呢? 考虑and起来至少为x 阅读全文
摘要:
1 #include 2 #include 3 #include 4 #include 5 #include 6 typedef long long ll; 7 ll read(){ 8 ll t=0,f=1;char ch=getchar(); 9 while (ch'9'){if (ch=='-')f=-1;ch=getchar();} 10 ... 阅读全文
摘要:
http://codeforces.com/problemset/problem/204/A 题意:给定一个【L,R】区间,求这个区间里面首位和末尾相同的数字有多少个 思路:考虑这个问题满足区间加减,我们只考虑【1,n】,考虑位数小于n的位数的时候,我们枚举头尾的数是多少,然后乘上10的某幂次,再考 阅读全文