joj 2284 W-LINE
2010-09-10 20:01
190 查看
http://acm.jlu.edu.cn/joj/showproblem.php?pid=2284
题意就是求这样的W型折线能把平面最多分成几个部分?
一看到这种题目,没得说,就是去找它的递推公式。这和直线分平面,折线分平面,三角形分平面,还有圆分平面,平面分空间都是一类题。从我推这些题中得出了一个结论,要想推出它们的关系就必须找到它们的共同点,和呈线性变化的量,以及一些不变量,变化的量与不变量的关系等,如果找到了那么问题就简单了。
1.直线分平面:揪住要得到最多的分块,就要让它们的直线尽可能多的相交,每多一个交点,那么分块就会在原来的基础上多出一个,这就是它们变量之间的关系。于是假设已知,n-1条直线的分块f(n-1),那么再加一条直线要得到最多的分块,就让它与已知的直线多相交。就增加了n 个分块,f(n) = f(n-1)+n,整理得.f(n) = n*(n+1)/2 + 1.
2.折线分平面:道理是一样的,这里,我们只要关注它的交点,与研究直线一样,让折线都尽可能的相交,我们关注它的交点就好了。另一思路就是把一个折线延长,变成两条直线来研究,再扣回重复的。就得,f<n> = 2*n*n - n+1.
3.平面分空间:和上面的研究方法一样,我们先假设已知n-1个平面分空间数,那么再增加一个平面时,考虑它们的交线(这个与交点有共性),最多有n-1条交线在第n个平面上。这第n 个平面将被这n-1条交线分成f<n-1>个区域,每个区域都将原来的一部分空间变成了两部分空间,也就是增加了f<n-1>个空间,故F(n) = F(n-1)+f(n-1).整理得,F(n) = (n*n*n +5*n + 6)/6
4.用相同的方法:得出三角形分平面:f(n) = 2*n*n - n + 1;
5.W形折线分平面,与前面的思路一样,揪住它们的交点就能得出结论了。F(n) = 8 * n*n - 7*n+1.
本题代码
题意就是求这样的W型折线能把平面最多分成几个部分?
一看到这种题目,没得说,就是去找它的递推公式。这和直线分平面,折线分平面,三角形分平面,还有圆分平面,平面分空间都是一类题。从我推这些题中得出了一个结论,要想推出它们的关系就必须找到它们的共同点,和呈线性变化的量,以及一些不变量,变化的量与不变量的关系等,如果找到了那么问题就简单了。
1.直线分平面:揪住要得到最多的分块,就要让它们的直线尽可能多的相交,每多一个交点,那么分块就会在原来的基础上多出一个,这就是它们变量之间的关系。于是假设已知,n-1条直线的分块f(n-1),那么再加一条直线要得到最多的分块,就让它与已知的直线多相交。就增加了n 个分块,f(n) = f(n-1)+n,整理得.f(n) = n*(n+1)/2 + 1.
2.折线分平面:道理是一样的,这里,我们只要关注它的交点,与研究直线一样,让折线都尽可能的相交,我们关注它的交点就好了。另一思路就是把一个折线延长,变成两条直线来研究,再扣回重复的。就得,f<n> = 2*n*n - n+1.
3.平面分空间:和上面的研究方法一样,我们先假设已知n-1个平面分空间数,那么再增加一个平面时,考虑它们的交线(这个与交点有共性),最多有n-1条交线在第n个平面上。这第n 个平面将被这n-1条交线分成f<n-1>个区域,每个区域都将原来的一部分空间变成了两部分空间,也就是增加了f<n-1>个空间,故F(n) = F(n-1)+f(n-1).整理得,F(n) = (n*n*n +5*n + 6)/6
4.用相同的方法:得出三角形分平面:f(n) = 2*n*n - n + 1;
5.W形折线分平面,与前面的思路一样,揪住它们的交点就能得出结论了。F(n) = 8 * n*n - 7*n+1.
本题代码
#include<stdio.h> int main(){ int n; while(scanf("%d",&n)!=EOF){ printf("%d/n",8*n*n-7*n+1); } return 0; }
相关文章推荐
- 2284: W-LINE
- SQL SERVER – Fix : Error Msg 1813, Level 16, State 2, Line 1 Could not open new database ‘yourdatabasename’. CREATE DATA
- org.apache.jasper.JasperException: /pages/column.jsp (line: 8, column: 1) File "pathTags.jsp" not f
- 一篇搞定微信分享和line分享
- 2011 4-13 A strange link error 2001 about inline function
- UESTC 802—— Just a Line
- display:inline、block、inline-block的区别
- Drupal 6.1.0 Deprecated: Function ereg() is deprecated in xxx includes/file.inc on line 902?
- Command line中使用TexturePacker
- can't find file to patch at input line 3 错误原因
- cin、cin.get()、cin.getline()、getline()、gets()等函數的用法 以及cin.ignore,cin.clear等。。
- Command line error D2016 : '/ZI' and '/O2' command-line options are incompatible 解决办法
- Android 集成Line登陆提示无法正常处理
- joj 2703: Paper Cutting
- luajit command line
- 【ZJOJ 5454】【NOIP2017提高A组冲刺11.5】仔细的检查
- 关于WinHand.cpp Line 199错误
- SVN Could not parse response status line解决
- linux中noinline和inline关键字解析
- VC6.0显示行号插件:VC6LineNumberAddin.dll