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

安徽省建设厅网站域名北京好的做网站的公司哪家好

安徽省建设厅网站域名,北京好的做网站的公司哪家好,德阳网站优化,好的策划方案网站题目描述 绘图机器的绘图笔初始位置在原点(0,0)#xff0c;机器启动后按照以下规则绘制直线#xff1a; 尝试沿着横线坐标正向绘制直线直到给定的终点E。期间可以通过指令在纵坐标轴方向进行偏移#xff0c;offsetY为正数表示正向偏移#xff0c;为负数表示负向偏移。 给…题目描述 绘图机器的绘图笔初始位置在原点(0,0)机器启动后按照以下规则绘制直线 尝试沿着横线坐标正向绘制直线直到给定的终点E。期间可以通过指令在纵坐标轴方向进行偏移offsetY为正数表示正向偏移为负数表示负向偏移。 给定了横坐标终点值E以及若干条绘制指令请计算绘制的直线和横坐标轴以及XE的直线组成图形的面积。 输入描述 首行为两个整数N和E表示有N条指令机器运行的横坐标终点值E。 接下来N行每行两个整数表示一条绘制指令X offsetY用例保证横坐标X以递增排序的方式出现且不会出现相同横坐标X。 取值范围 0 N 100000 X E 20000-10000 offsetY 10000 输出描述 一个整数表示计算得到的面积用例保证结果范围在0到4294967295之内。 解题思路 初始化变量包括总面积、上一个点的横坐标和纵坐标。遍历指令对于每一条指令计算当前段与X轴围成的面积并累加到总面积中。 面积 (当前X - 上一个X) * |上一个Y|因为上一个Y到当前Y之间是一个矩形或梯形的高而宽度是当前X与上一个X的差注意这里使用了绝对值来计算高度因为面积总是正的。 处理最后一个段如果最后一个点的X坐标小于E则需要计算最后一个段与XE的直线围成的面积。输出结果输出计算得到的总面积。 Java实现示例 import java.util.Scanner;public class DrawingMachineArea {public static void main(String[] args) {try (Scanner scanner new Scanner(System.in)) {// 读取N和Eint N scanner.nextInt();int E scanner.nextInt();// 输入验证if (N 0 || E 0) {throw new IllegalArgumentException(N 和 E 必须大于零);}// 初始化变量int lastX 0; // 上一个点的横坐标int lastY 0; // 上一个点的纵坐标long totalArea 0; // 总面积使用long类型以防止溢出// 读取指令并计算面积for (int i 0; i N; i) {int currentX scanner.nextInt();int offsetY scanner.nextInt();// 输入验证if (currentX 0 || currentX E) {throw new IllegalArgumentException(currentX 必须在 [0, E] 范围内);}int currentY lastY offsetY; // 计算当前Y坐标// 计算当前段与X轴围成的面积int width currentX - lastX;int height Math.abs(currentY - lastY); // 使用绝对值计算高度// 溢出检测if (width Integer.MAX_VALUE / height) {throw new ArithmeticException(计算面积时可能发生溢出);}long segmentArea (long)width * height; // 使用long类型进行计算以防止溢出// 累加面积到总面积中totalArea segmentArea;// 更新上一个点的坐标lastX currentX;lastY currentY;}// 计算最后一个段与XE的直线围成的面积如果有的话if (lastX E) {int width E - lastX;long segmentArea (long)width * Math.abs(lastY); // 使用long类型进行计算以防止溢出// 溢出检测if (totalArea Long.MAX_VALUE - segmentArea) {throw new ArithmeticException(累加总面积时可能发生溢出);}totalArea segmentArea;}// 输出结果System.out.println(totalArea);} catch (Exception e) {System.err.println(发生错误: e.getMessage());} }}注意事项 输入处理确保输入的格式正确并按照题目描述的取值范围进行验证虽然题目要求不需要显式验证但在实际编程中应该考虑这一点。面积计算在计算面积时使用长整型long来防止溢出。这是因为当N、E和offsetY的取值范围较大时单个段的面积可能会超过int类型的最大值。最后一个段不要忘记计算最后一个段与XE的直线围成的面积如果最后一个点的X坐标小于E。输出格式输出一个整数表示计算得到的面积确保结果在题目给定的范围内内。 为了提供一个运行示例我将模拟一些输入数据并展示如何使用上述Java代码来计算绘图机器绘制的直线与坐标轴围成的面积。由于我们不能直接在文本环境中运行代码我将通过描述输入数据和预期输出来模拟这个过程。 输入数据示例 假设我们有以下输入数据 4 10 2 3 4 -1 7 2 9 4这表示 有4条指令N4。横坐标终点值E10。指令依次为 在X2处Y方向偏移3到达点(2,3)。在X4处Y方向偏移-1到达点(4,2)。在X7处Y方向偏移2到达点(7,4)。在X9处Y方向偏移4到达点(9,8)。 预期输出 我们需要计算由这些点和X10的直线围成的面积。通过手动计算或运行代码我们可以得到以下面积 从(0,0)到(2,3)的面积2 * 3 6从(2,3)到(4,2)的面积2 * 1 2注意高度是|3-2|1从(4,2)到(7,4)的面积3 * 2 6从(7,4)到(9,8)的面积2 * 4 8从(9,8)到(10,8)的面积与X10相交1 * 8 8 将这些面积相加我们得到总面积6 2 6 8 8 30。
http://www.tj-hxxt.cn/news/231569.html

相关文章:

  • 做康复医院网站谷歌浏览器免费入口
  • 山东济铁工程建设集团有限公司网站江苏招标网
  • 网站布局有哪些常见的免费app制作网站
  • 做网上推广网站中小企业网站建设客户需求调查问卷
  • 在线培训网站网站建设员是做什么的
  • wordpress博客漏洞巩义网站建设方式优化
  • 网站编程软件有哪些北京十大活动策划公司
  • 房产集团网站建设wordpress商品展示模块
  • 建设银行网站 个人客户端wordpress置顶文章 插件
  • 西安专业承接网站搭建模板织梦网站产品
  • 电子商务网站建设用什么登录网络规划设计师教程(第2版)
  • 南通网站建设top自己可以免费做网站吗
  • 网站开发及流行框架thinkphpcmf网站开发
  • 网站设计构想为网站网站做宣传
  • 长沙商城网站建设有趣的个人网站
  • 自己怎么做直播网站吗用电脑做网站服务器
  • 做中医诊所网站百度不喜欢wordpress
  • 空白网站怎么建百度做的网站后台怎么更新
  • 免费的网站推广渠道响应式网站企业
  • 山东济南seo整站优化费用网站推广风险
  • 门户网站产品设计方案策划书模板范文
  • 岫岩做网站微信公众号开发教程
  • 怎么做微信钓鱼网站吗电子商务推广方式有哪些
  • 湛江城市建设培训中心网站网页设计课程安排
  • 微网站设计与制作流动性管理
  • 郑州百度网站优化排名网络品牌推广策略
  • 网站建设业务流程做网站怎样申请域名
  • 洛阳网站建设价格低如何利用国外的网站开发客户
  • .net开发网站怎么样上海外贸新三样出口超2400亿元
  • 网站服务器租用售价网站推广培训哪里好