ACM算法竞赛编程挑战.pptVIP

  • 0
  • 0
  • 约1.54千字
  • 约 37页
  • 2026-09-03 发布于北京
  • 举报

ACM程序设计;今天,;每七天一星(3):;第四讲;先热身一下——;第6页;第7页;思考2分钟:怎样处理?;容易列举出N=1,2,3的情况:

0

0,1

0,2,3

假如已知N的情况,我们来分析加入第N条直线的情况(这里N=4):

1、第四条与其余直线全部平行=无交点;

2、第四条与其中两条平行,交点数为(n-1)*1+0=3;

3、第四条与其中一条平行,这两条平行直线和另外两点直线的交点数为(n-2)*2=4,而另外两条直线既可能平行也可能相交,因此可能交点数为:

(n-2)*2+0=4或者(n-2)*2+1=5

4、第四条直线不与任何一条直线平行,交点数为:

(n-3)*3+0=3或者(n-3)*3+2=5或者(n-3)*3+3=6

即n=4时,有0个,3个,4个,5个,6个不同交点数。;从上述n=4的分析过程中,我们发觉:

m条直线的交点方案数

=(m-r)条平行线与r条直线交叉的交点数

+r条直线本身的交点方案

=(m-r)*r+r条之间本身的交点方案数(1=r=m)

;一、数塔问题;用暴力的方法,能够吗?;试想一下:

这道题假如用枚举法(暴力思想),在数塔层数稍大的情况下(如31),则需要列举出的路径条数将是一种非常庞大的数目(2^30=1024^

文档评论(0)

1亿VIP精品文档

相关文档