搜狗校招编程题-建房子
@[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;}
搜狗校招编程题-建房子相关推荐
- 2016搜狗校招编程题
题目定义两个偶数之间的距离为:两个数之间的素数的个数, 测试数据 第一行为偶数的个数 3 第二行为第一个偶数 4 第三行为第二个偶数 6 第四行为第三个偶数 12 三个偶数升序排列,三个数两两之间的距 ...
- 【vivo2021届秋季校招编程题】【java】广度优先搜索(BFS)/深度优先搜索(DFS)找最短路径长度
vivo2021届秋季校招编程题 图中 找两点间的最短路径长度 广度搜索bfs/深度搜索dfs vivo游戏中心的运营小伙伴最近接到一款新游戏的上架申请,为了保障用户体验,运营同学将按运营流程和规范对 ...
- 网易2018年春招 校招编程题
时间:2018.3.27 申请岗位:测试实习生(网易杭州)-音乐事业部 记录一下自己人生的第一次笔试吧..自己的水平还是太差了,希望以后自己翻到这篇文章的时候能够有进步. 20道选择题:其中一半都是测 ...
- 京东校招java面试题_京东2018校招编程题解答(Java)
写在前面 本文主要是解答这次校招中京东的笔试编程题,这次京东的笔试编程题比较难,涉及KMP算法.manacher算法等.文中的解法也是在观看了左神(左程云)9月20号在牛客网的直播后,自己花时间写出来 ...
- 微软校招编程题Beautiful String的状态机解法
昨天碰巧看到一道微软校招的编程题,题目大意如下: 如果一个字符串包括三组或者更多组的连续升序字母,每组长度相等,那么我们就称这个字符串是Beautiful String如下是一些Beautiful S ...
- 京东校招编程题——小熊分苹果
刚做完京东校招在线笔试,第一道编程题居然没做出来,开始时没想到关键点还以为题目出错了,浪费了很多时间,郁闷-- 题目如下: N(1<N<9)只熊分一堆苹果,第一只熊(叫小东)把苹果平均分成 ...
- 小米校招编程题:数组乘积、异形数、朋友圈
这里记录一下方便查找,原文地址:http://blog.csdn.net/hackbuteer1/article/details/8484974 二.编程题 1.数组乘积(15分) 输入:一个长度为n ...
- 2019 快手校招编程题两道解答
[编程题] 二进制中有多少个1 时间限制:1秒 空间限制:32768K 把一个32-bit整型转成二进制,其中包含多少个1,比如5的二进制表达是101,其中包含2个1 输入描述: 输入为整型(十进制) ...
- 拼多多2018校招编程题
[编程题] 最大乘积 给定一个无序数组,包含正数.负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1) 输入描述: 无序整数数组A[n] 输出描述: 满足 ...
最新文章
- 语言 提取列名_学习健明老师发布的R语言练习题的学习笔记(二)
- 67道 Python自动化面试题
- python数组切片效率_python – 对numpy数组切片进行采样的最快方法是什么?
- 互联网1分钟 |1228
- 数据结构:线性数据结构(3)-deques(栈,队列,deques, 列表)
- oracle 导库时日志满了,oracle rac 11g 日志占满系统盘导致数据库down掉
- 【qduoj - 1011】数组中出现最多的元素(巧妙方法 或 排序 或 map)
- linux+top+常用参数,linux的top命令参数详细说明
- 远程桌面连接服务器,提示身份验证错误,要求的函数不受支持,但又找不到加密Oracle修正
- Windows环境下使用Linux命令
- Java 实验5 T5
- 用JAVA FX制作3D魔方游戏
- 用户名登陆时如何在后面加一个小红*_最后一个登陆框引起的血案
- 微信 小程序 python 渲染_两小时快速构建微信小程序
- 基于量子计算的md5密码哈希破解方法
- Deep Gait Recognition: A Survey 阅读笔记
- 原生JS获取dom元素高度
- 如何屏蔽移动垃圾短信10658464
- keystore生成签名证书
- 毕业论文参考文献引用
热门文章
- PostgreSQL的学习心得和知识总结(八十三)|词法级自上而下完美实现Oracle数据库的 q转义 的实现方案
- IIS通过共享文件夹发布aspx程序站点(部分为原创)
- 浅谈域名分级及域名解析过程
- 初学C语言(时间2022.11.7)
- *关键字retry:很像goto语句,跳到标记处
- HFDS 常用命令 fsck 查看文件信息和block位置信息
- tensorflow介绍(转)
- css实现旋转的小箭头
- 【项目一】:易班晚点名(以合职业晚点名为平台做的)
- 光敏电阻、测试夹、DC2.1电源接口及万用表的使用