51nod 3035 划分平面
链接https://www.51nod.com/Challenge/Problem.html#problemId=3035
用n条直线,划分平面,最多能够划分为多少块?
例如:
1条可以划分为2块
2条可以划分为4块
3条可以划分为7块
输入
共一行:1个数n(1≤n≤10^9)
输出
输出共1行,对应划分的数量 Mod 10^9+7
数据范围
对于20%的数据,1≤n≤10;
对于44%的数据,1≤n≤20000;
对于100%的数据,1≤n≤10^9;
输入样例
3
输出样例
7

分析
递归

f(n)=2,when n=1
f(n)=f(n-1)+n,when n>1

递推

2+2+3+4+...+n=1+1+2+3+...+n=1+n*(n+1)/2

想用递归来写,这样会超时
记忆化递归呢?数组得开很大,空间花销太大

从记忆化递归到用动态规划dp来写,估计也不能全过,看看效果

代码如下

#include<iostream>
#include<string>
#include<cstring>
#include<vector>
using namespace std;const long long  maxn=1e9+7;long long split(int n){long long dp[n+1];dp[1]=2;for(int i=2;i<=n;i++)dp[i]=i+dp[i-1];return dp[n];
}
int main(){int n;cin>>n;long long result=split(n);cout<<result%maxn;}

好了,直接说公式1+n*(n+1)/2,这个直接AC
注意类型long long

#include<iostream>
using namespace std;const long long  maxn=1e9+7;int main(){long long  n;cin>>n;long long result=1+n*(n+1)/2;cout<<result%maxn;}

[递归][DP]n条直线最多分平面为几部分?相关推荐

  1. n条直线最多将平面分成几部分

    n条直线最多将平面分成几部分 1条直线:2部分 2条直线:4部分 3条直线:7部分 4条直线:11部分 - 由此可见,有递推公式: 当n = 1时,f[1] = 2 当n > 1时,f[n] = ...

  2. n条线分平面问题解决方法总结

    注明出处,摘自 http://www.cnblogs.com/chaosheng/archive/2012/01/26/2329583.html (1) n条直线最多分平面问题题目大致如:n条直线,最 ...

  3. 思维拓展:直线分平面问题

    问题描述 在平面上画一条直线,可以将平面分成两个部分.如果再画一条直线,则最多将平面分成4部分.依次类推,3条直线最多将平面分成7个部分,那么100条直线最多将平面分成多少个部分? 解题思路 从直线较 ...

  4. n条直线相交最多有几个邻补角_【初中数学】102条做初中几何辅导线的规律

    今天给大家整理的是[初中数学]102条做初中几何辅导线的规律 资料如果能帮到你,希望你可以帮忙点赞-感谢-收藏支持一下! 若你需要下载word来打印,可以查看我的个人简介,上面有资料下载方式. (资料 ...

  5. n条直线相交最多有几个邻补角_【东升二中数字课堂】创意微课直线的交点|Super数学璐...

    感谢您关注洛阳东升二中官方微信!如果您尚未关注,请点击图片上方的文字"洛阳市东升第二中学",加关注! 课题名称  |  <直线的交点> 授课教师  |  王璐 制作团队 ...

  6. LeetCode149. 直线上最多的点数: 给定一个二维平面,平面上有 n 个点,求最多有多少个点在同一条直线上。

    给定一个二维平面,平面上有 n 个点,求最多有多少个点在同一条直线上. 示例 1: 输入: [[1,1],[2,2],[3,3]] 输出: 3 解释: ^ | | o | o | o ±------- ...

  7. 给定一个二维平面,平面上有 n 个点,求最多有多少个点在同一条直线上。

    需求:给定一个二维平面,平面上有 n 个点,求最多有多少个点在同一条直线上. 分析思路: 1.将所有点二维坐标化,即定义出所有点的x,y坐标值 2.遍历出所有取出两点的情况(不考虑先后顺序),根据任意 ...

  8. 每天一道LeetCode-----平面上n个点,计算最多有多少个点在一条直线上

    Max Points on a Line 原题链接Max Points on a Line 给出2D平面中的n个坐标点,计算最多有多少个点在一条直线上 一条直线可以用斜率表示,即如果已知(x1,y1) ...

  9. 判断平面上两条直线是否相交

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 判断平面 ...

最新文章

  1. tensorflow.python.framework.errors_impl.InvalidArgumentError: 2 root error(s) found.
  2. JavaScript 开发者最期待的年度大会,惊喜不断,错过还要等好久!
  3. Python ConfigParser的使用
  4. python基本语句及其意思_Python语法基础(1),一
  5. 躺平,躺下就能赢吗?
  6. 剑指 Offer 55 - I. 二叉树的深度
  7. Mongodb在windows下通过配置文件配置和访问
  8. 网络协议和Netty
  9. EF安装和更新数据库
  10. “姑娘好像花儿一样”如何英译
  11. 腾云驾雾了解Windows10和微软私有云
  12. 修复Word打开文档默认显示两页的问题
  13. Linux【实操篇】—— 进程管理、服务管理、软件包管理(rpm、yum)
  14. 迅雷android面试,迅雷面试题(转载)
  15. 新浪邮箱界面登录按钮效果制作
  16. scikit-learn 线性回归算法库小结
  17. 浅谈高速公路服务区分布式光伏并网发电
  18. 对你来说,哪一个深度学习网络是最佳选择?(2)
  19. 2019年南京大学计算机研究生复试分数线,2019南京大学研究生分数线汇总(含2016-2019历年复试)...
  20. 大数据是人类福音还是洪水猛兽?

热门文章

  1. [Android]Android端ORM框架——RapidORM(v2.1)
  2. [原]ubuntu14.04 网卡逻辑修改没有文件/etc/udev/rules.d/70-persistent-net.rules
  3. mysql性能优化-慢查询分析、优化索引和配置
  4. Logistic Regression and Classification
  5. C#.NET 通用权限管理系统组件 大数据多表分页获取部分列的参考方法
  6. ASP.NET 快乐建站系列–2. Rad Controls 简介
  7. linux网络编程常用函数详解与实例(socket--bind--listen--accept)
  8. raid5坏了一块盘怎么办_服务器阵列信息丢失,数据怎么办?先不要慌,也许很快就能恢复...
  9. 为什么分类对象越多训练时间越长?
  10. 中秋祝福网页制作_10大中秋H5模板分享,助力吸粉10000+