【Leetcode周赛】从contest1开始。(一般是10个contest写一篇文章)
注意,以前的比赛我是自己开了 virtual contest。这个阶段的目标是加快手速,思考问题的能力和 bug-free 的能力。
前面已经有了100个contest。计划是每周做三个到五个contest。每次计算时间一个半小时。
Warm Up Contest (Contest 1)(2018年10月22日,周一)
链接:https://leetcode.com/contest/warm-up-contest
【386】Lexicographical Numbers
给了一个数字 n,要求返回 1 ~ n的字典顺排序。
For example, given 13, return: [1,10,11,12,13,2,3,4,5,6,7,8,9].
题解:我一开始用了转成字符串然后用字符串比较的方式排序,但是不行,tle。后来直接dfs自己生成,AC了。
//转成字符串排序会tle
class Solution {
public:
vector<int> lexicalOrder(int n) {
vector<int> ans;
if (n <= ) {
return ans;
}
dfs(n, , ans);
return ans;
}
void dfs(int n, int temp, vector<int>& ans) {
for (int cur = ; cur <= ; ++cur) {
if (temp == && cur == ) { continue; }
temp = temp * + cur;
if (temp <= n) {
if (temp != ) {ans.push_back(temp);}
dfs(n, temp, ans);
temp = (temp - cur) / ; //backtracking 这个要调。
} else {
return;
}
}
}
};
【387】First Unique Character in a String
给了一个字符串,要求返回第一个出现只一次字符的下标,不存在这样的字符返回 -1。
题解:直接用了一个map,能过。
class Solution {
public:
int firstUniqChar(string s) {
const int n = s.size();
if (n == ) {return -;}
map<char, vector<int>> mp;
for (int i = ; i < n; ++i) {
mp[s[i]].push_back(i);
}
int ans = n;
for (auto ele : mp) {
if (ele.second.size() == ) {
ans = min(ans, ele.second.front());
}
}
return ans == n ? - : ans;
}
};
【388】Longest Absolute File Path
Contest 2(2018年10月23日,周二)
链接:https://leetcode.com/contest/leetcode-weekly-contest-2
【389】Find the Difference
【390】Elimination Game
【391】Perfect Rectangle
【Leetcode周赛】从contest1开始。(一般是10个contest写一篇文章)的更多相关文章
- 【Leetcode周赛】从contest-111开始。(一般是10个contest写一篇文章)
Contest 111 (题号941-944)(2019年1月19日,补充题解,主要是943题) 链接:https://leetcode.com/contest/weekly-contest-111 ...
- 【Leetcode周赛】从contest-71开始。(一般是10个contest写一篇文章)
Contest 71 () Contest 72 () Contest 73 (2019年1月30日模拟) 链接:https://leetcode.com/contest/weekly-contest ...
- 【Leetcode周赛】从contest-81开始。(一般是10个contest写一篇文章)
Contest 81 (2018年11月8日,周四,凌晨) 链接:https://leetcode.com/contest/weekly-contest-81 比赛情况记录:结果:3/4, ranki ...
- 【Leetcode周赛】从contest-91开始。(一般是10个contest写一篇文章)
Contest 91 (2018年10月24日,周三) 链接:https://leetcode.com/contest/weekly-contest-91/ 模拟比赛情况记录:第一题柠檬摊的那题6分钟 ...
- 【Leetcode周赛】从contest-121开始。(一般是10个contest写一篇文章)
Contest 121 (题号981-984)(2019年1月27日) 链接:https://leetcode.com/contest/weekly-contest-121 总结:2019年2月22日 ...
- 【Leetcode周赛】从contest-41开始。(一般是10个contest写一篇文章)
Contest 41 ()(题号) Contest 42 ()(题号) Contest 43 ()(题号) Contest 44 (2018年12月6日,周四上午)(题号653—656) 链接:htt ...
- 【Leetcode周赛】从contest-51开始。(一般是10个contest写一篇文章)
Contest 51 (2018年11月22日,周四早上)(题号681-684) 链接:https://leetcode.com/contest/leetcode-weekly-contest-51 ...
- 【LeetCode】从contest-21开始。(一般是10个contest写一篇文章)
[LeetCode Weekly Contest 29][2017/04/23] 第17周 Binary Tree Tilt (3) Array Partition I (6) Longest Lin ...
- LeetCode 31:递归、回溯、八皇后、全排列一篇文章全讲清楚
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天我们讲的是LeetCode的31题,这是一道非常经典的问题,经常会在面试当中遇到.在今天的文章当中除了关于题目的分析和解答之外,我们还会 ...
随机推荐
- setserial - 取得/设置 Linux 串行口的信息
总览 setserial [ -abqvVWZ] 设备 [ 命令参数一 [ 设备变元参数 ] ] ... setserial -g [-abGv ] 设备一 ... 描述 setserial 是一个用 ...
- Linux操作练习
打印显示当前时间,格式是:20181209211008 [root@Centos7 ~]#date "+%Y%m%d%H%M%S" 实现晚上20:30自动关机 [root@Cent ...
- go语言从例子开始之Example3.变量
在 Go 中,变量 被显式声明,并被编译器所用来检查函数调用时的类型正确性 package main import "fmt" func main() { var 声明 1 个或者 ...
- Welcome to MarkdownPad 2
Welcome to MarkdownPad 2 MarkdownPad is a full-featured Markdown editor for Windows. Built exclusive ...
- webpack第一节(1)
跟着慕课网的老师做了下笔记 webpack是一个前端打包工具 它可以优化网页.例如 页面模块化加载.图片优化.css.js压缩等等. 模块化加载也就是懒加载,按需加载,以前的模式是所以得css写在一起 ...
- python--MySql 表记录的操作
表记录的增删改查 ---插入表记录 全列插入:insert into 表名 values(...) 缺省插入:insert into 表名(列1,...) values(值1,...) -- 插入一条 ...
- mysql的安裝
记得上学的时候,“研究”过一次mysql,找了篇文章,在课堂上念了.至今已经10余年,居然没再碰过数据库,自以为做嵌入式不用数据库,回头一看,却已经out许久... 上网下到最新的mysql5.5,从 ...
- 高级运维(七):Subversion基本操作、使用Subversion协同工作、制作nginx的RPM包
一.Subversion基本操作 目标: 本案例要求先快速搭建好一台Subversion服务器,并测试该版本控制软件: 1> 创建版本库 2> 导入初始化数据 3> 检出 ...
- Oracle中start with...connect by (prior)子句的用法
connect by 是结构化查询中用到的,基本语法是:select … from tablenamestart with 条件1connect by 条件2where 条件3; 例:select * ...
- leetcode上的位运算
136-只出现过一次的数字 思路:可以考虑到数字以二进制形式存储,当两个不同的数字异或的时候会是true,所以把数组里的数字都一一处理一遍就可以了. class Solution { public: ...