leetcode- 距离顺序排序矩阵单元格
C++解法:
#include <iostream>
#include <vector>
#include <map>
#include <algorithm> using namespace std; class Solution {
public:
vector<vector<int>> allCellsDistOrder(int R, int C, int r0, int c0) {
vector<vector<int>> res(R*C, vector<int>());//数组第三个位置存放两点的曼哈顿距离
int num = ;
for (int i = ; i<C; i++)
{
for (int j = ; j<R; j++)
{
res[num][] = j;
res[num][] = i;
res[num][] = abs(r0 - j) + abs(c0 - i);//曼哈顿距离
num++;
}
}
sort(res.begin(), res.end(), ismax);//排序
for (int i = ; i<num; i++)//将曼哈顿距离删除
{
res[i].pop_back();
}
return res;
}
static bool ismax(vector<int> &a, vector<int> &b)//根据曼哈顿距离升序排序
{
return a[]<b[];
}
}; int main()
{
Solution m;
m.allCellsDistOrder(, , , ); return ;
}
Python解法:
def allCellsDistOrder(R, C, r0, c0):
dist_list = [[] for i in range(R+C)]
for i in range(R):
for j in range(C):
distinct = abs(r0 - i) + abs(c0 - j)
dist_list[distinct].append([i, j])
result = []
for i in dist_list:
if i:
result.extend(i)
else:
break
return result print(allCellsDistOrder(2, 3, 1, 2))
leetcode- 距离顺序排序矩阵单元格的更多相关文章
- LeetCode.1030-曼哈顿距离排序矩阵单元格(Matrix Cells in Distance Order)
这是小川的第384次更新,第412篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第246题(顺位题号是1030).我们给出一个矩阵,其中R行和C列具有整数坐标(r,c)的 ...
- [Swift]LeetCode1030. 距离顺序排列矩阵单元格 | Matrix Cells in Distance Order
We are given a matrix with R rows and C columns has cells with integer coordinates (r, c), where 0 & ...
- PyQt5单元格操作大全
1.显示二维列表数据(QTableView)控件 '''显示二维列表数据(QTableView)控件数据源model需要创建一个QTableView实例和一个数据源model,然后将其两者关联 MVC ...
- count、counta函数巧妙运用于合并单元格填充序号
函数运用: 1.COUNT(value1,value2, ...) value1 是必需参数. 要计算其中数字的个数的第一项.单元格引用或区域. value2, ... 为可选参数 ...
- Cxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值
Delphi Cxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值 cxGrid1DBTableView1.Controller.FocusedRowIndex 当前行号 cxGrid1DB ...
- 【c语言】二维数组中的查找,杨氏矩阵在一个二维数组中,每行都依照从左到右的递增的顺序排序,输入这种一个数组和一个数,推断数组中是否包括这个数
// 二维数组中的查找,杨氏矩阵在一个二维数组中.每行都依照从左到右的递增的顺序排序. // 每列都依照从上到下递增的顺序排序.请完毕一个函数,输入这种一个数组和一个数.推断数组中是否包括这个数 #i ...
- WinForm笔记1:TextBox编辑时和DataGridView 单元格编辑时 的事件及其顺序
TextBox 编辑框 When you change the focus by using the mouse or by calling the Focus method, focus event ...
- JQ完成表格单元格顺序的上移下调
如有指教及疑问,欢迎留言 HTML代码 <table class="exampletable"> <thead> <tr> <th> ...
- 实现GridControl的行单元格非顺序跳转
用GridControl控件添加数据的时候发现,有一些字段过多但是并不是每个字段都需要用户输入,每个单元格都回车跳转的时候不仅浪费时间,而且用户体验也不好,就需要单元格跳转的时候,不需要的字段可以隔过 ...
随机推荐
- MHA + proxysql 高可用以及读写分离
环境 vip 192.168.1.101 slave 192.168.1.16 5.7.17 3306 master 192.168.1.135 5.7.17 3306 proxysql 192.16 ...
- Django之ModelForm操作
一.ModelForm的使用 顾名思义,ModelForm就是将Model与Form进行绑定,Form有自动生成表单的作用,但是每一个forms字段需要自己手动填写,而Model就是数据库表包含了所有 ...
- vue 使用Animate.css库
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- python操作pymysql
#_author:来童星#date:2019/12/19import pymysql#1.打开数据库连接db=pymysql.connect('localhost','root','root','te ...
- Tool ALL Framework
//https://www.cnblogs.com/jiftle/p/10895260.html C++ 资源大全 关于 C++ 框架.库和资源的一些汇总列表,内容包括:标准库.Web应用框架.人工智 ...
- 深入理解Magento-第九章-修改、扩展、重写Magento代码
(博主提示:本章应该不是原作者的第九章,仅作补充和参考) 作为一个开发者的你,肯定要修改Magento代码去适应你的业务需求,但是在很多时候我们不希望修改Magento的核心代码,这里有很多原因,例如 ...
- Yii2中一些常用的参数
系统类型: <?= php_uname() ?> 解译引擎: <?= $_SERVER['SERVER_SOFTWARE'] ?>, Zend: <?= Zend_Ver ...
- jmeter登录之-动态参数
jmeter登录之-动态参数 1.抓包查看提交的登录参数 发现参数authenticity_token是动态的,每次都不一样,所以回放的时候就会失败 2.提取动态变化的参数-后置处理器(相当于LR的关 ...
- (转)阿里RocketMQ Quick Start
转:http://blog.csdn.net/a19881029/article/details/34446629 RocketMQ单机支持1万以上的持久化队列,前提是足够的内存.硬盘空间,过期数据数 ...
- img标签+map的使用
img标签+map的使用 img标签含有一个usemap属性,用法相当于锚点的使用,usemap="#useName".然后就是map标签,具体代码: <body> & ...