- 一、斐波那契数列
- 二、曼哈顿距离解决菱形构造问题
- 1.什么是曼哈顿距离
- 三、循环优化问题
- 1.c++默认1秒执行1亿次
- 2.被除数与约数的关系。
- 3.实现
- 4.讲解思路
由f(n)=f(n-1)+f(n-2)可知,只需要保存一个数据的前两项,就可以求出本数据。
通过枚举,保存n-2次数据,就能求出f(n)
代码
横坐标差的绝对值与纵坐标差的绝对值之和。
所有打星的地方是曼哈顿距离小于等于2的地方。格子为5乘5。
题目:
理解:找一个1亿位数据的所有约数,一个数据需要循环1亿次,100个需要100亿次,打破了c++规则
约数=被除数/除数 或者 约数=被除数/(上一个约数)
例如:被除数12 除数2 约数=12/2=6 约数=12/6=2
则通过这个规律,就可以枚举出所有较小的约数,就能找到较大的约数。
小约数<大约数
约数<被除数/约数
约数<根号下被除数
根据题目被除数1亿位,开根号后,1万位。最多100个被除数,100万次计算,满足c++规则。
只需要在根号下被除数中寻找约数。
避免36,49这种(两个约数一样)。
较大的约数在判断前需要排除上述情况
#include#include using namespace std; int main() { int n; cin>>n; for(int i=0;i >data; int sum=0; // for(int i=1;i 4.讲解思路 d为约数,x为被除数。



