问题标题:
1.一个100x100的三角矩阵a采用行优先压缩存储后,如果首元素a[0][0]是第一个元素,那么a[4][2]是第几个元素?A.13B.401C.402D.403答案给的是:D(我的思路是:(4-0)*100+3=403;不知道对不对)2.一个10X10的
问题描述:

1.一个100x100的三角矩阵a采用行优先压缩存储后,如果首元素a[0][0]是第一个元素,那么a[4][2]是第几个元素?A.13B.401C.402D.403

答案给的是:D

(我的思路是:(4-0)*100+3=403;不知道对不对)

2.一个10X10的三角矩阵a采用行优先压缩存储后,如果首元素a[0][0]是第一个元素,那么a[4][2]是第_____个元素?

答案给的是:13

(我的思路是:(4*(4+1)/2+3=13;但这个解题思路明显与上题不符,不是(4-0)*10+3=43.这种类型的题到底如何正确的解?)

程豪回答:
  严格意义上来说这两题都是有问题,也就是题目本身就有问题,因为没有说明这个三角矩阵是上三角矩阵还是下三角矩阵!   第一题按下三角矩阵就是A,按上三角算:就100*(100+1)/2+1;因为i>j;显然D肯定不对   第二题按下三角矩阵就是13,否则就是10*(10+1)/2+1
孙旻回答:
  你发现这两种相同类型的题,却用了两种不同的方法,但两种方法结果却不一样。我只想知道这种题到底应该用哪种方法算?(我有点怀疑第一题的答案应该是A)
程豪回答:
  本来答案是第二种形式,但是实际编程的话是用第一种形式,我昨天帮一个人修改代码,就是按第一种形式的
查看更多
数学推荐
热门数学推荐