![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
分治
大而化小,或由小到大的通解想法,一般使用递归实现
Honour Van
新款人工智障
展开
-
快速幂(log2 p)模板
#include <cstdio> int main() { long long b, p, m;//虽然看似是int范围,但如果b = 2^32 - 2 = m - 1,那么就会越界 scanf("%lld%lld%lld", &b, &p, &m); long long ans = 1; printf("%lld^%lld mod %lld=", b, p, m);//使用这个输入输出的时候,是比较接近底层的。所以要自己考虑类型的问题原创 2020-05-26 11:20:39 · 628 阅读 · 0 评论 -
洛谷P1010 自我总结:递归和分治
P1010 幂次方 分治的核心是找到每一步的可能结果,不管是正推还是逆推。 在这个题当中每一步都有两种可能 是2的幂次方 不是2的幂次方 第一种情况对应着2(solve())的结构 第二种对应着寻找一个等比隔项求和式 先开始正因为没有定义清楚这个开头,所以导致了很多不必要的时间浪费 代码 #include <iostream> using namespace std; int a; string res[20] = {"2(0)", "2"}, s = "2(", e = ")"; stri原创 2020-05-25 09:24:22 · 525 阅读 · 0 评论 -
[pieces] 关灯问题:分治、位运算、bool变量取反
这是一道自造题题目描述输入格式输出格式分析要点记录 题目描述 有一个有灯泡组成的矩阵,其中每行有6个,共5行 每一个灯都对应一个按钮,当按下按钮时,该按钮以及周围位置都会改变状态(由暗变亮或由亮变暗)。 如图:按下红色处灯泡对应的按钮,周围几个灯泡的状态都发生反转。 周围的灯泡状态不一定都是相同的,且关闭后,仍可以因为周围或者本身的操作而重新打开。如下: 输入格式 无输入。 输出格式 输出一个5×65\times65×6的矩阵。按钮操作处为111,否则为000。 分析 第二次按下同一按钮,作用抵消;原创 2020-05-20 14:59:27 · 1120 阅读 · 0 评论