当前位置: 首页 > news >正文

网站建设规范布局有几部分甜品网站设计

网站建设规范布局有几部分,甜品网站设计,吉林企业建站系统费用,wordpress文章列表paixu通过万岁#xff01;#xff01;#xff01; 题目#xff1a;给你一个n*2的数组#xff0c;然后第i行表示第i个点的坐标#xff0c;然后还给你了一个字符串s#xff0c;s[i]则表示第i个点的名称。然后让你找一个中心是#xff08;0,0#xff09;的正方形#xff0c;…通过万岁 题目给你一个n*2的数组然后第i行表示第i个点的坐标然后还给你了一个字符串ss[i]则表示第i个点的名称。然后让你找一个中心是0,0的正方形正方形中尽可能包含多的点但是里面的点的名称不能重复。即所有的点不存在s[i]s[j]的情况。思路下面的点我们先都以第一象限来考虑然后写代码的时候加个绝对值就好了。首先是构建一个map然后key是名称value是点的list。如果list的长度大于1就对list进行排序排序的规则就是坐标轴x或者y最大的那个点在后面即切比雪夫距离也就是max(|x|,|y|)。然后我们找正方形边长的一半这里叫他minWidth就好了因为这个list的长度大于1我们要让正方形尽可能的大list是排序过的所以不包含第二点暂记为a,b就好了也就是minWidthmax(a,b)-1但是minWidth还要与之前的minWidth取最小值所以最终公式为minWidthmax(minWidth,max(a,b)-1)。拿到宽度以后我们再遍历map然后记录有多少个点再minWidth的范围之内就好了。进阶思路我的代码时间复杂度有点高因为涉及到了排序。然后我看了下网上大佬们的思路其实不用排序的我们只需要遍历字符串找到s[i]的这些点中第二小的切比雪夫距离。技巧排序 java代码 class Solution {public int maxPointsInsideSquare(int[][] points, String s) {MapCharacter, Listint[] map new HashMap();for (int i 0; i s.length(); i) {Listint[] list map.getOrDefault(s.charAt(i), new ArrayList());list.add(points[i]);map.put(s.charAt(i), list);}// 对list进行排序int minWidth Integer.MAX_VALUE;for (Map.EntryCharacter, Listint[] entry : map.entrySet()) {Listint[] value entry.getValue();if (value.size() 2) {// 坐标最大的那个放在后面value.sort(Comparator.comparingInt(o - Math.max(Math.abs(o[0]), Math.abs(o[1]))));// 获取第二个点int[] point value.get(1);// 不能包含第二个点minWidth Math.min(minWidth, Math.max(Math.abs(point[0]), Math.abs(point[1])) - 1);}}int ret 0;for (Map.EntryCharacter, Listint[] entry : map.entrySet()) {Listint[] value entry.getValue();int[] point value.getFirst();if (Math.abs(point[0]) minWidth Math.abs(point[1]) minWidth) {ret;}}return ret;} }java代码——进阶 class Solution {public int maxPointsInsideSquare(int[][] points, String s) {MapCharacter, Integer map new HashMap();// 正方形的宽度的一半int minWidth Integer.MAX_VALUE;for (int i 0; i s.length(); i) {int temp Math.max(Math.abs(points[i][0]), Math.abs(points[i][1]));// s[i]的宽度Integer siWidth map.getOrDefault(s.charAt(i), Integer.MAX_VALUE);if (temp siWidth) {// 因为已经有比siWidth小的点了siWidth可能是第二小的点minWidth Math.min(minWidth, siWidth);// 当前这个点的坐标会更小我们要保留这个点map.put(s.charAt(i), temp);} else if (temp minWidth) {// temp这个可能是不是s[i]中更小的但是他比minWidth小minWidth temp;}}int ret 0;for (Map.EntryCharacter, Integer entry : map.entrySet()) {if (entry.getValue() minWidth) {ret;}}return ret;} }总结题目还是有点难度的主要是这里的切比雪夫距离。
http://www.w-s-a.com/news/24638/

相关文章:

  • dw网页设计模板图片谷歌wordpress优化
  • 网站seo优化要怎么做礼品公司怎么做网站
  • 做网页网站需要钱吗提供常州微信网站建设
  • 网站建设文化效果广东网站建设哪家有
  • 毕业设计做网站怎样做特别一点在线网页制作软件
  • html网站代码上海这边敲墙拆旧做啥网站的比较多
  • 微网站怎么用在线crm管理系统
  • 中国城乡建设部人力网站首页如何利用某个软件做一个网站
  • 个人承接网站建设wordpress editor
  • 建站主机 wordpress专业的菏泽网站建设公司
  • 网站响应时间 标准网站建设色调的
  • 网站开发的合同网站建设 设计
  • 网站开发设置网页端口申请免费个人网站空间
  • 制作广告网站的步骤云服务器做网站
  • ipv6可以做网站吗东莞网站建站推广
  • 注册功能的网站怎么做做网站容易还是编程容易
  • wordpress建立目录seo编辑培训
  • 网站怎么群发广州现在可以正常出入吗
  • 微信有网站开发吗多语种网站
  • 深圳网站设计 建设首选深圳市室内设计公司排名前50
  • 上海网站建设 觉策动力wordpress接口开发
  • 网站建设服务器的选择方案小型视频网站建设
  • 江宁做网站价格扬州立扬计算机培训网站建设怎么样
  • 手表网站背景开发新客户的十大渠道
  • 定制网站设计wordpress写的网站
  • p2p网站建设公司排名成都装饰公司
  • 网站被k怎么恢复wordpress缓存类
  • 做外贸有哪些网站平台最近文章 wordpress
  • joomla网站模板一个人做网站的swot
  • 南京建设网站需要多少钱深圳专业网站建设制作价格