5x5矩阵反对角线元素校验:测试用例结果存疑求助
问题验证与结论
先明确目标矩阵的关键元素:
给定的5x5矩阵:
int a[5][5] = { {1,2,5,-1,1}, {4,8,4,1,6}, {2,4,6,7,8}, {3,4,7,1,2}, {8,8,11,9,3} };
- 主对角线元素(i=j的位置):1、8、6、1、3,去重后为{1,3,6,8}
- 反对角线元素(i+j=4的位置):1、1、6、4、8
你的代码逻辑清晰:
- 先提取主对角线元素存入数组
md - 遍历矩阵找到所有反对角线元素,逐个调用
inar检查是否存在于md中 - 只要有一个元素不存在,立即返回0;全部存在则返回1
这里反对角线中的元素4确实不在主对角线的元素集合里,代码返回0是完全符合题目要求的正确结果。
结论
测试用例要求输出1是错误的,你的代码逻辑正确,判断无误。
内容的提问来源于stack exchange,提问作者krazyman 50
相关产品推荐
相关产品推荐

