c - 如何打印矩阵中重复的最大元素的位置?
问题描述
我正在尝试打印矩阵中最后一列的最大元素的位置。但是当用户输入这样的重复元素时会出现一个问题 -
Matrix A =
|1 2 1|
|2 1 2|
|4 0 3|
|1 1 2|
|2 2 3|
而不是这样输入
Matrix B =
|1 2 1|
|2 1 2|
|4 0 3|
|1 1 0|
|2 2 1|
这里,3 是矩阵 A 中最后一列的最大元素。
如果我运行这段代码,它只会打印位置 (2,2)
int index = DP[0][c - 1];
int indexRow=0;
for (int row = 1; row < r; row++)
{
if (DP[row][c - 1] > index)
{
index = DP[row][c - 1];
indexRow = row;
}
}
printf("\n\nIt is in (%d,%d) cell\n\n", indexRow, c-1);
但我也希望打印 (4,2) 位置
或重复最大元素的位置,如果插入了 Matrix A 之类的东西。
任何帮助或想法将不胜感激。
解决方案
推荐阅读
- html - 如何以三种不同的方式对齐弹性项目?
- docker - docker-compose 在不运行命令的情况下启动/启动
- reactjs - onClick 发布请求并重定向到另一个页面
- regex - 删除 Atom 中现有文件的尾随换行符
- python - PostgreSQL。如何使用python复制一行中单元格的值并将其粘贴到同一表中另一行的另一个单元格中
- c# - AutoMapper - 具有多个相同类型属性的 ProjectTo 类
- php - 来自数据库的php数据不显示
- javascript - 显示进度条
- sql - 当字段为空时从 SQL 数据透视表中删除行
- json - 如何使用 Django DRF 将“CSV 杂乱数据”转换为“JSON 结构化数据”