java 网格照明(Dropbox Q)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 网格照明(Dropbox Q)相关的知识,希望对你有一定的参考价值。

public class Lamps{
	private boolean[] columns, rows, diagonalsLeft, diagonalsRight;

	public Lamps(int size, int[][] lamps){
		this.columns = new boolean[size];
		this.rows = new boolean[size];
		this.diagonalsLeft = new int[(size) * 2 - 2];  or (size - 1) * 2 + 1
		this.diagonalsRight = new int[(size) * 2 - 2];

		
		for(int[] lampcoor : lamps){
			int row = lampcoor[0];
			int col = lampcoor[1];

      //check if this x,y is out of 8 adjacent cells of queried box.
      if(row > x+1 || row < x-1 || col < y-1 || col > y+1){
           this.columns[row] = true;
			     this.rows[col] = true;
			     this.diagonalsLeft[row + col] = true;
			     this.diagonalsRight[row - col] = true;  // take abs difference
		   }
		}
	}

	public boolean query(int x, int y){
		if(columns[x] || rows[y] || diagonalsLeft[x + y] || this.diagonalsRight[x - y])
			return true;
	}


}

以上是关于java 网格照明(Dropbox Q)的主要内容,如果未能解决你的问题,请参考以下文章

leetcode1001. 网格照明 代码优化记录

LeetCode 1001. 网格照明 / 2006. 差的绝对值为 K 的数对数目 / 1447. 最简分数

Android CameraX 仿一甜相机(录像拍照可调节尺寸聚焦照明网格线),最全的CameraX教程

Three.js自定义objLoader几何照明

“文件->另存为”和“另存为”之间的照明差异

智哪儿出品 | 智能行业科普系列之智能照明百问百答第二期