C++编程。主要涉及两个三角形相似的! 100
有两个数组A和B,里面分别有100个点。在A中随机取3个点a,b,c组成三角形,与B中任意3个点组成的三角形判断相似,如果相似B点相似的点为d,e,f,保留a点和b点,d...
有两个数组A和B,里面分别有100个点。在A中随机取3个点a,b,c组成三角形,与B中任意3个点组成的三角形判断相似,如果相似B点相似的点为d,e,f,保留a点和b点,d点和e点,把c点和f点存出来。再从A中取一个点,与a,b点组成三角形,与B中所有和d,e两点组成的三角形判断相似,如果相似,就把相似的那个点存出来。如果a,b,c三个点组成的三角形在B中没有相似的三角形,那么就重新取3个点。
判断相似,请用3边对应成比例来判断。能帮我写出循环,并把要求的点存入数组中就行了。 展开
判断相似,请用3边对应成比例来判断。能帮我写出循环,并把要求的点存入数组中就行了。 展开
1个回答
展开全部
A,B中有三点共线的如何处理,舍弃?还是输入就保证不会有共线。
A中的三个点是随机取的,是不是意为不用遍历A中所有可能?
abc和def相似,是指a点对应d点、b点对应e点,c点对应f点一定满足?还是不用讲对应只要两个三角形相似就行。
假如B中有三角形def和ghi都与A中abc相似,如你上述描述,找到def后我们只用换f,那么ghi是不会被找到的。也就是说在B中只用找到第一个和abc相似的就行。可以这样理解么?
假如我们找到三角形abc和def相似的话,我们分别固定ab,bc,ac可以得到三个不同的数组。这三个都要么?
对于1.假设没有共线,对于2.遍历所有A中的可能,对于5.三个数组都要的话。你最后将会得到24502500个数组。虽然大部分数组是空的。为了提高搜索效率这些空数组是有必要存在的。
追问
能加个Q讨论下么,你提的这5点对我帮助很大!237811427
追答
QQ 1458261940。晚上才在线
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询