@[TOC][搜狗校招编程题-建房子]

题目描述

某市政府规划建设一个新的小镇,要求小镇上的所有房屋都坐落在同一条东西向大姐的北侧并且临街(两座房子不能重叠)。到目前为止,这条街上已经建造了n座房子,每座房子的位置是xi,面宽是ai。建造工程师小汪受命在该镇建造一座新房子,客户希望他的新房屋面宽为t,并且至少贴着之前已有的一座房子建造。您能帮小汪算出这座房屋一共有多少种建法么?注意:xi为每座屋子的中心坐标。

示例

输入

2,[-1,4,5,2]

输出

4

说明

要创建一个房屋面宽为2的房屋,其中已有两个房屋A、B,其中A坐标为-1宽度为4,B坐标为5宽度为2,这样A占据了-3~1,B占据了4~6。因此我们能紧挨着A的东面或西面、或者B的东面或西面建造新房子,一共四种建造方法

代码1

功能实现了,测试用例也通过了,通过率40%,后面答题时间过了没有继续修改。有大佬可以指导一下问题么?具体的输入不需要我写,我只是把示例上面的输入定义了以下,功能是通过函数写进去的。

#include <iostream>
#include <vector>
using namespace std;
int t = 2; //输入面宽
int num = 2;   //可建造的房子数量
int a[] = { -1,4,5,2 };    //输入其他房子的坐标和面宽
float c_max;    //保存其他房子的左边坐标
float c_min;    //保存其他房子的右边坐标
vector<float> b;  //用于保存其他房子占的坐标范围
int main()
{for (int i = 0; i < (sizeof(a) / sizeof(a[0])); i=i+2){c_min = a[i] - (a[i + 1]/2);b.push_back(c_min);c_max = a[i] + (a[i + 1]/2);b.push_back(c_max);}for (int j = 1; j < (sizeof(a) / sizeof(a[0]) -1); j = j + 2){if ((b[j] + t) <= b[j + 1])num++;if ((b[j + 1] - t) > b[j])num++;}cout << num;return 0;}

搜狗校招编程题-建房子相关推荐

  1. 2016搜狗校招编程题

    题目定义两个偶数之间的距离为:两个数之间的素数的个数, 测试数据 第一行为偶数的个数 3 第二行为第一个偶数 4 第三行为第二个偶数 6 第四行为第三个偶数 12 三个偶数升序排列,三个数两两之间的距 ...

  2. 【vivo2021届秋季校招编程题】【java】广度优先搜索(BFS)/深度优先搜索(DFS)找最短路径长度

    vivo2021届秋季校招编程题 图中 找两点间的最短路径长度 广度搜索bfs/深度搜索dfs vivo游戏中心的运营小伙伴最近接到一款新游戏的上架申请,为了保障用户体验,运营同学将按运营流程和规范对 ...

  3. 网易2018年春招 校招编程题

    时间:2018.3.27 申请岗位:测试实习生(网易杭州)-音乐事业部 记录一下自己人生的第一次笔试吧..自己的水平还是太差了,希望以后自己翻到这篇文章的时候能够有进步. 20道选择题:其中一半都是测 ...

  4. 京东校招java面试题_京东2018校招编程题解答(Java)

    写在前面 本文主要是解答这次校招中京东的笔试编程题,这次京东的笔试编程题比较难,涉及KMP算法.manacher算法等.文中的解法也是在观看了左神(左程云)9月20号在牛客网的直播后,自己花时间写出来 ...

  5. 微软校招编程题Beautiful String的状态机解法

    昨天碰巧看到一道微软校招的编程题,题目大意如下: 如果一个字符串包括三组或者更多组的连续升序字母,每组长度相等,那么我们就称这个字符串是Beautiful String如下是一些Beautiful S ...

  6. 京东校招编程题——小熊分苹果

    刚做完京东校招在线笔试,第一道编程题居然没做出来,开始时没想到关键点还以为题目出错了,浪费了很多时间,郁闷-- 题目如下: N(1<N<9)只熊分一堆苹果,第一只熊(叫小东)把苹果平均分成 ...

  7. 小米校招编程题:数组乘积、异形数、朋友圈

    这里记录一下方便查找,原文地址:http://blog.csdn.net/hackbuteer1/article/details/8484974 二.编程题 1.数组乘积(15分) 输入:一个长度为n ...

  8. 2019 快手校招编程题两道解答

    [编程题] 二进制中有多少个1 时间限制:1秒 空间限制:32768K 把一个32-bit整型转成二进制,其中包含多少个1,比如5的二进制表达是101,其中包含2个1 输入描述: 输入为整型(十进制) ...

  9. 拼多多2018校招编程题

    [编程题] 最大乘积 给定一个无序数组,包含正数.负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)  输入描述: 无序整数数组A[n] 输出描述: 满足 ...

最新文章

  1. 语言 提取列名_学习健明老师发布的R语言练习题的学习笔记(二)
  2. 67道 Python自动化面试题
  3. python数组切片效率_python – 对numpy数组切片进行采样的最快方法是什么?
  4. 互联网1分钟 |1228
  5. 数据结构:线性数据结构(3)-deques(栈,队列,deques, 列表)
  6. oracle 导库时日志满了,oracle rac 11g 日志占满系统盘导致数据库down掉
  7. 【qduoj - 1011】数组中出现最多的元素(巧妙方法 或 排序 或 map)
  8. linux+top+常用参数,linux的top命令参数详细说明
  9. 远程桌面连接服务器,提示身份验证错误,要求的函数不受支持,但又找不到加密Oracle修正
  10. Windows环境下使用Linux命令
  11. Java 实验5 T5
  12. 用JAVA FX制作3D魔方游戏
  13. 用户名登陆时如何在后面加一个小红*_最后一个登陆框引起的血案
  14. 微信 小程序 python 渲染_两小时快速构建微信小程序
  15. 基于量子计算的md5密码哈希破解方法
  16. Deep Gait Recognition: A Survey 阅读笔记
  17. 原生JS获取dom元素高度
  18. 如何屏蔽移动垃圾短信10658464
  19. keystore生成签名证书
  20. 毕业论文参考文献引用

热门文章

  1. PostgreSQL的学习心得和知识总结(八十三)|词法级自上而下完美实现Oracle数据库的 q转义 的实现方案
  2. IIS通过共享文件夹发布aspx程序站点(部分为原创)
  3. 浅谈域名分级及域名解析过程
  4. 初学C语言(时间2022.11.7)
  5. *关键字retry:很像goto语句,跳到标记处
  6. HFDS 常用命令 fsck 查看文件信息和block位置信息
  7. tensorflow介绍(转)
  8. css实现旋转的小箭头
  9. 【项目一】:易班晚点名(以合职业晚点名为平台做的)
  10. 光敏电阻、测试夹、DC2.1电源接口及万用表的使用