用曼哈顿距离来巧解---输出菱形的问题
今天才发现输出菱形有一个特别巧妙的方法。就是用曼哈顿距离。
详细资料可以看这里:曼哈顿距离
那么如何用曼哈顿距离来输出菱形的呢?
我们来分析一下。
你会发现输出 " * " 号的位置到中心点的曼哈顿距离都是小于等于 n/2 的。 其中n代表菱形的行数。
那么代码就如下:
#include<iostream>
#include<cmath>
using namespace std;
int main(void)
{int n; cin>>n;int c=n/2;for(int i=0;i<n;i++){for(int j=0;j<n;j++){if(abs(i-c)+abs(j-c)<=c)//曼哈顿距离小于n/2{cout<<"*";}else{cout<<" ";}}cout<<endl;}return 0;
}
用曼哈顿距离来巧解---输出菱形的问题相关推荐
- 曼哈顿距离算法详解(含公式)
欧氏距离是人们在解析几何里最常用的一种计算方法,但是计算起来比较复杂,要平方,加和,再开方,而人们在空间几何中度量距离很多场合其实是可以做一些简化的.曼哈顿距离就是由 19 世纪著名的德国犹太人数学家 ...
- 【51nod - 1108】距离之和最小 V2(曼哈顿距离,中位数性质)
题干: 三维空间上有N个点, 求一个点使它到这N个点的曼哈顿距离之和最小,输出这个最小的距离之和. 点(x1,y1,z1)到(x2,y2,z2)的曼哈顿距离就是|x1-x2| + |y1-y2| + ...
- HDU 4311 - Meeting point-1(前缀和优化曼哈顿距离)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4311 题意:给定n个点,找出一点使得该点到其余各点的曼哈顿距离总和最小,输出最小值. 思路:分别对横纵 ...
- C++绘制菱形(曼哈顿距离求解:贼快!!!)
思路: 1.双重for循环遍历输出是最基本的 2.了解曼哈顿距离 (1)菱形的输入一定是奇数 (2)我们是思想是填充 * 怎么填呢?我们来画图看看 以 3*3 的矩阵为例子! 我们来看看 距离是怎么定 ...
- 打印菱形(曼哈顿距离法)
曼哈顿距离: 我们由定义会发现,距离一个点的曼哈顿距离总是在围绕这个点的一个菱形边上,所以我们就有 默认矩阵行列数是奇数 ceter = int(input()) //中心点的坐标for i in r ...
- 曼哈顿距离(Manhattan Distance )详解
概念 曼哈顿距离--两点在南北方向上的距离加上在东西方向上的距离,即d(i,j)=|xi-xj|+|yi-yj|.对于一个具有正南正北.正东正西方向规则布局的城镇街道,从一点到达另一点的距离正是在南北 ...
- 详解曼哈顿距离欧式距离切比雪夫距离
详解曼哈顿&欧式距离&切比雪夫距离 曼哈顿距离 基本概念:出租车几何或曼哈顿距离(Manhattan Distance)是由十九世纪的赫尔曼·闵可夫斯基所创词汇 ,是种使用在几何度量空 ...
- 曼哈顿距离最小生成树莫队算法
参考资料:https://www.cnblogs.com/CsOH/p/5904430.html https://blog.csdn.net/huzecong/article/details/8576 ...
- 曼哈顿距离(值得收藏)
曼哈顿距离 定义 出租车几何或曼哈顿距离(Manhattan Distance)是由十九世纪的赫尔曼·闵可夫斯基所创词汇 ,是种使用在几何度量空间的几何学用语,用以标明两个点在标准坐标系上的绝对轴距总 ...
最新文章
- linux磁盘管理系列一:磁盘配额管理
- Web 趋势榜:上周最热门的 10 大 Web 项目 - 210410
- 关于python搞笑段子_Python爬取内涵段子里的段子
- 《数据库SQL实战》找出所有员工当前薪水salary情况
- mysql 5.5.23 winx64,win10下mysql 5.7.23 winx64安装配置方法图文教程
- 【LeetCode】3月16日打卡-Day1
- div 文字 input 垂直居中
- linux重启python服务_如何将python脚本作为linux服务启动
- win10执行npm出现Error: EBUSY: resource busy or locked 错误解决方法
- 学习Jsoup(二)
- iOS底层探索之dyld(下):动态链接器流程源码分析
- ArcGIS中用数据生成线和面的方法
- 唐家三少的新作品《天珠变》的最近评论...
- 技术写作中的那些神兵利器
- MFC Tab控件的使用方法
- 1024程序员节开幕,龙蜥多位技术专家参与演讲
- 青蛙跳格子(斐波那契数列)
- Awesome Quant
- 软件测试有哪些前景?
- 常用的十大数据分析方法!
热门文章
- rcmd: socket: Permission denied
- hibernate映射简单实例
- Codeforces - 662A 思路巧妙的异或
- 搭建本地 Registry - 每天5分钟玩转 Docker 容器技术(20)
- ajax分页实现(php)
- how to learn
- 蓝牙4.0技术分析1-广播者角色
- 出块过程(2)nodeos 服务器接收消息
- C++ Primer 5th笔记(chap 14 重载运算和类型转换)函数调用运算符
- C++ Primer 5th笔记(6)chapter6 函数: 重载