解题思路:

这道题真实地反映了我今晚有多脑残=。=只需要从根号N开始向前找,第一个能被N整除的数就是width,然后存到结果就

可以了。因为离根号N越近,width越大,与length的差越小。

vector<int> constructRectangle(int area) {
vector<int> result;
int i;
//float min = 0.1;
int length,width;
int start = pow(area, 0.5);
for (i = start; i >= 1; i--) {
if (area % i == 0) {
width = i;
length = area / i;
break;
}
}
result.push_back(length);
result.push_back(width);
return result;
} 

解题思路:这道题要求运行时间为O(n)且不能有额外的空间,有点意思。不过题目限定数组里都是正整数,且刚好在[1,size]

的范围内,所以考虑用负号做区分。从头开始扫描,将nums[nums[i]-1]的值设为负数,那么等扫描过一遍之后,

仍然是正数的index再加1就是缺失的数了。需要注意的是,设负数后,index会有负数,所以应该是将nums[abs(nums[i]) - 1]

设为负数。

vector<int> findDisappearedNumbers(vector<int>& nums) {
vector<int> result;
int i;
for (i = 0; i < nums.size(); i++) {
if (nums[abs(nums[i])-1] > 0)
nums[abs(nums[i])-1] *= -1;
}
for (i = 0; i < nums.size(); i++) {
if (nums[i] > 0)
result.push_back(i+1);
}
return result;
}

leetcode-6-basic的更多相关文章

  1. [LeetCode] 224. Basic Calculator 基本计算器

    Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...

  2. [LeetCode] 227. Basic Calculator II 基本计算器 II

    Implement a basic calculator to evaluate a simple expression string. The expression string contains ...

  3. [LeetCode] 772. Basic Calculator III 基本计算器之三

    Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...

  4. [LeetCode] 227. Basic Calculator II 基本计算器之二

    Implement a basic calculator to evaluate a simple expression string. The expression string contains ...

  5. LeetCode#227.Basic Calculator II

    题目 Implement a basic calculator to evaluate a simple expression string. The expression string contai ...

  6. Java for LeetCode 227 Basic Calculator II

    Implement a basic calculator to evaluate a simple expression string. The expression string contains ...

  7. Java for LeetCode 224 Basic Calculator

    Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...

  8. (medium)LeetCode 224.Basic Calculator

    Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...

  9. (medium)LeetCode 227.Basic Calculator II

    Implement a basic calculator to evaluate a simple expression string. The expression string contains ...

  10. leetcode 224. Basic Calculator 、227. Basic Calculator II

    这种题都要设置一个符号位的变量 224. Basic Calculator 设置数值和符号两个变量,遇到左括号将数值和符号加进栈中 class Solution { public: int calcu ...

随机推荐

  1. meta标签的一些用法

    meta是html语言head区的一个辅助性标签.几乎所有的网页里,我们可以看到类似下面这段的html代码: <head> <meta http-equiv="conten ...

  2. CentOS7.5安装JDK1.8

    1.准备JDK安装包 [1]查看环境 cat /etc/redhat-release [2]下载JDK1.8 网址: https://www.oracle.com/technetwork/java/j ...

  3. C# 实现本地化日志管理

    1.新建一个类库解决方案 CommnoLog 2.新建两个文件夹 2.1FileUtil.cs  代码如下 public static class FileUtil { /// <summary ...

  4. JS的使用

    Javascript代码在浏览器中运行,做出更流畅.优美的页面效果,增强用户体验与java是完全不同的东西,只是名称类似而已写在<script></script>标签中 大小写 ...

  5. HTTP1.1中CHUNKED编码解析(转载)

    HTTP1.1中CHUNKED编码解析 一般HTTP通信时,会使用Content-Length头信息性来通知用户代理(通常意义上是浏览器)服务器发送的文档内容长度,该头信息定义于HTTP1.0协议RF ...

  6. 记录下这周的mysql调优工作

    这周一至周四基本都在做mysql的测试和调优工作,包括erlang端对mysql的写入测试,到今天为止暂且告一段落,下周先做下其他的开发.    测试环境    使用的测试环境是aliyun的杭州节点 ...

  7. JAVA常量介绍

    常量: 在程序执行过程中,其值不发生改变的量: 1.分类:     字面值常量和自定义常量: 1.字面值常量有以下几种: 字符串常量.小数常量.整数常量.字符常量.布尔常量(true.false).空 ...

  8. SQLAlchemy的基本使用

    一.介绍 SQLAlchemy是一种ORM(Object-Relational Mapping)框架,用来将关系型数据库映射到对象上.该框架建立在DB API之上,将类和对象转化成SQL,然后使用AP ...

  9. HTML 中的特殊字符

    空格符         <小于号    < >大于号    > &和好      & ¥人民币  ¥ ©  版权   © ®  注册商标 ® ℃ 摄氏度  ° ...

  10. 拷贝文件至U盘——提示:对于目标系统文件过大

    一.问题描述: 在制作U盘启动工具的时候,通常制作出的U盘文件系统是FAT32,但是当需要拷贝进去的系统文件大小超过4GB时,就会提示上述问题 二.解决办法: 1.格式化U盘,在格式化界面“文件系统” ...