三维形体投影面积(java)
问题描述:
样例如下:
代码如下:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;
public class ProjectionArea {public int projectionArea(int[][] grid) {return topView(grid)+frontView(grid)+sideView(grid);}//俯视图public int topView(int[][] grid){int res=0;//扫描所有元素,若该点的元素值大于1,则表示在俯视图中存在一块小正方形for (int i = 0; i <grid.length ; i++) {for (int j = 0; j <grid[0].length ; j++) {if (grid[i][j]>0)res++;}}return res;}//正视图public int frontView(int[][] grid){int res=0;for (int i = 0; i <grid[0].length ; i++) {int temp=0;//记录该列最大值for (int j = 0; j <grid.length ; j++) {if (grid[j][i]>temp)temp=grid[j][i];}res+=temp;}return res;}//侧视图public int sideView(int[][] grid){int res=0;for (int i = 0; i <grid.length ; i++) {int temp=0;//记录该行的最大值for (int j = 0; j <grid[0].length ; j++) {if (grid[i][j]>temp){temp=grid[i][j];}}res+=temp;}return res;}public static void main(String[] args) {Scanner scanner=new Scanner(System.in);BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(System.in));System.out.println("请输入二维数组行数");int n=scanner.nextInt();int[][] grid=new int[n][];System.out.println("请输入二维数组(按行输入,元素之间用逗号隔开)");try {for (int i = 0; i <n ; i++) {String[] temp=bufferedReader.readLine().split(",");int[] a=new int[temp.length];for (int j = 0; j <temp.length ; j++) {a[j]=Integer.parseInt(temp[j]);}grid[i]=a;}} catch (IOException e) {e.printStackTrace();}System.out.println("该图的三视图之和为:");ProjectionArea projectionArea=new ProjectionArea();int res=projectionArea.projectionArea(grid);System.out.println(res);}
}
运行结果如下:
三维形体投影面积(java)相关推荐
- 力扣——883. 三维形体投影面积(Java、JavaScript、C实现)
三维形体投影面积 在 n x n 的网格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 ( ...
- #力扣LeetCode883. 三维形体投影面积 @FDDLC
题目描述: 883. 三维形体投影面积 - 力扣(LeetCode) (leetcode-cn.com) Java代码: class Solution {public int projectionAr ...
- LeetCode 887. 三维形体投影面积
887. 三维形体投影面积 在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i ...
- LeetCode 883. 三维形体投影面积(数学)
文章目录 题目 方法:数学 题目 883. 三维形体投影面积 方法:数学 xyxyxy 平面的投影面积等于网格上非零数值的数目 yz\texttt{yz}yz 平面的投影面积等于网格上每一列最大数值之 ...
- LeetCode刷题之883. 三维形体投影面积
LeetCode刷题之883. 三维形体投影面积 我不知道将去向何方,但我已在路上! 时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 ! 题目: 在N*N的网格中,我们放置了一些与 ...
- LeetCode(883)——三维形体投影面积(JavaScript)
在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上. 现在,我们查看 ...
- 883.三维形体投影面积
在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上. 现在,我们查 ...
- LeetCode 0883「三维形体投影面积」
文章目录 题目 分析 实现 题目 在 n x n 的网格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值v = grid[i][j] 表示 v 个正方体叠 ...
- 883. 三维形体投影面积
在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上. 现在,我们查 ...
- LeetCode——883. 三维形体投影面积
文章目录 题目描述 答案 我的答案 官方答案 数学 题目描述 在 n x n 的网格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值 v = grid[i ...
最新文章
- Truncate a string
- 皮一皮:王大爷尽说些大实话...
- AngularJs $anchorScroll、$controller、$document
- arguments的理解
- 电脑合上盖子不锁屏_笔记本电脑合上盖子或台式机离开后黑屏是“休眠”还是“睡眠”...
- 【转】GIS原理学习
- Photoshop 2021安装教程附PS安装包下载
- 2.3两个列表或元组首尾相连
- 钓鱼指北 Gophish钓鱼平台和邮件服务器搭建
- rank函数在c语言怎么用,如何利用RANK函数排名?RANK函数怎么使用?
- Qt笔记(十五)之设置程序图标
- MySQL存储过程从入门到精通
- Qt开源库之----Qwt
- SecureCRT8.0X 高亮配色方案
- 打开matlab闪退的原因
- 查询sick编码器型号是否支持hiperface接口方法,软件支持所有带此接口sick编码器
- 苗家牛憋(屎)汤独步天下
- A Switched View of Retinex Deep Self-Regularized Low-Light Image
- 如何完全卸载VS2010(亲自体验过)
- Linux串口驱动程序(3)-打开设备