HDU-2050 折现分割平面 递推
2017-10-07 22:28
267 查看
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=2050
题意:用m个V字最多可以分割多少个平面。
思路:直接推V字的公式有点难,我们可以尝试从常见的直线型来入手。直线型的思路当然是每次新增的第n条直线都切割了平面上的所有n-1直线,显而易见这个时候会新增n-1个点。然后就可以找一下规律了。手推一下序列为2,4,7,11……发现每次都加n,所以可以想到点和面的规律应该为n-1+1,画一下图会比较好理解。(没有严格证明,如有错误请指出)。回到V字形的,每次最多新增4*(n-1)个点,所以每次会多4 *(n-1)+1个面。递推或者打表都行。
另,貌似今年的湘潭热身好像出了一道W的?有兴趣可以推一下,当然具体数学dalao大概可以一眼出答案?
题意:用m个V字最多可以分割多少个平面。
思路:直接推V字的公式有点难,我们可以尝试从常见的直线型来入手。直线型的思路当然是每次新增的第n条直线都切割了平面上的所有n-1直线,显而易见这个时候会新增n-1个点。然后就可以找一下规律了。手推一下序列为2,4,7,11……发现每次都加n,所以可以想到点和面的规律应该为n-1+1,画一下图会比较好理解。(没有严格证明,如有错误请指出)。回到V字形的,每次最多新增4*(n-1)个点,所以每次会多4 *(n-1)+1个面。递推或者打表都行。
#include <stdio.h> #include <algorithm> #include <math.h> #include <iostream> using namespace std; const int maxn = 1e5+10; typedef long long ll; ll dp[maxn]; int main() { int n,m; dp[1]=2,dp[2]=7; for(int i=3;i<maxn;i++){ dp[i]=4*i-3+dp[i-1]; } scanf("%d",&n); while(n--){ scanf("%d",&m); printf("%lld\n",dp[m]); } return 0; }
另,貌似今年的湘潭热身好像出了一道W的?有兴趣可以推一下,当然具体数学dalao大概可以一眼出答案?
相关文章推荐
- [递推简单dp]-hdu 2050 折线分割平面
- HDU 2050 折线分割平面 (递推)
- hdu 2050 折线分割平面(递推,dp)
- HDU 2050 折线分割平面 (递推)
- 递推 Problem M:折线分割平面(HDU 2050)
- hdu 2050折线分割平面 递推
- HDU-2050 折线分割平面 找规律&递推
- 折线分割平面 【hdu-2050】【递推】
- HDU 2050 折线分割平面 (递推)
- HDU 2050 折线分割平面(根据直线递推)
- hdu 2050 折线分割平面 递推
- HDU 2050:折线分割平面(找规律,递推)
- HDU_2050——折线分割平面问题,递推
- 递推 HDU-2050 折线分割平面
- HDU - 2050 折线分割平面 递推 - 折线的平面分割
- HDU - 2050 折线分割平面 ( 递推 较难 )
- HDU 2050 折线分割平面(动态规划(DP) 递推)
- HDU 2050- 折线分割平面 -递推求解
- hdu 2050 折线分割平面 (递推)
- 递推求解专题练习(For Beginner) 折线分割平面 HDU 2050