zoukankan      html  css  js  c++  java
  • 算法:画图方案

    目录

            1.介绍

            2.问题描述

            3.解决思路

            4.代码

    1    介绍

            画一个二维数组图的思路

    2    问题描述

            给定了画图对象的高端、x间距、y间距,以及初始化坐标 x,y 画出 m*n的图形

    3    解决思路

            思路图如下

          image

             如图所示,此时

                   401的坐标为(0,0) 402的坐标为(x+房宽+间距x,0) 403的坐标为(x+房宽*2+间距x*2,0)

                   301的坐标为(0,y+房高+间距y) 302的坐标为(x+房宽+间距x, y+房高+间距y)

                   303(x+房宽*2+间距x*2, y+房高+间距y)

             假设共有a层楼

                     可以得到第m层楼的第n间房的坐标为( x+房宽*(n-1)+间距x*(n-1),y+房高*(a-m)+间距y*(a-m) )

                     即( x+(房宽+间距x)*(n-1),y+(房高+间距y)*(a-m) )

    4    代码

    var x=0,y=0; // 定义初始坐标 x ,y
    
    var roomH=10,roomL=10; //定义房高为roomH, 房宽为roomL
    
    var marginX=5,marginY=5; // 定义x轴间距:marginX,y轴间距:marginY
    
    var floorTotal=4,roomsInFloor=3;// 定义总楼层数 floorTotal,每层房间数:roomsInFloor
    
    for(var m=floorTotal;m>=1;m--)// 循环楼层
    
    {
    
        for(var n=1;n< roomsInFloor;n++) // 循环房间个数
    
        {
    
            var roomx=x+(roomL+marginX)*(n-1);
    
            var roomy=y+(roomH+marginY)*( floorTotal-m);
    
        }
    
    }
    View Code
  • 相关阅读:
    Unix网络编程中的五种IO模型
    go工具库分析——go-snowflake
    defer
    滑动窗口
    快速幂
    Golang使用注意点
    微服务数据一致性基础认知
    KMP算法
    单调栈和单调队列
    LRU简单学习
  • 原文地址:https://www.cnblogs.com/zhaord/p/4229309.html
Copyright © 2011-2022 走看看