由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 求两道题目的代码,学习一下
相关主题
fb国内申请的曲折经历+电面常见的一个电面题
请教F最近超爱的面试题任务安排的follow up怎么做A公司面挂了,发面经,攒RP
今天Amazon的phone interview请问如何准备多线程问题
也问一个算法题几个Java面试题 (转载)
Amazon 第一电面关于考hashmap/hashtable的实现
hashmap跟hash table有啥区别?三连击
弱问个数据结构的问题HashMap, HashTable and Array 有啥区别
Bloomberg 电面问几个关于hash, map, set的问题
相关话题的讨论汇总
话题: cooldown话题: int话题: gap话题: sum话题: tasks
进入JobHunting版参与讨论
1 (共1页)
e****s
发帖数: 113
1
1. Tasks: AABABCD
Cooldown Time: 2
A__AB_ABCD
Output: 10
就是说同样类型的task之间至少要等2,每个task的执行时间是1
followup: 如果cooldown是个参数,也就是说有可能会很长时间,怎么修改之前的程序
2. leetcode,three sum 不用sort 的n^2 代码
求教,有没有java 代码共享一下,打算学习一下。
e*******s
发帖数: 1979
2
1. HashMap last cool down?
A, 0
A, 0 + cooldown
B, 4
2. HashMap<> : keep 2 sum pairs, sum, them run again check.

【在 e****s 的大作中提到】
: 1. Tasks: AABABCD
: Cooldown Time: 2
: A__AB_ABCD
: Output: 10
: 就是说同样类型的task之间至少要等2,每个task的执行时间是1
: followup: 如果cooldown是个参数,也就是说有可能会很长时间,怎么修改之前的程序
: 2. leetcode,three sum 不用sort 的n^2 代码
: 求教,有没有java 代码共享一下,打算学习一下。

b**a
发帖数: 1118
3
Do not really know how to do the follow up.
private static int CoolDown(string tasks, int coolDown)
{
if (tasks.Length == 0 || tasks == null)
return 0;
Hashtable map = new Hashtable();
int sum = tasks.Length;
int gap = 0;
for(int i = 0;i< tasks.Length; i++)
{
char c = tasks[i];
if(map.ContainsKey(c))
{
int distance = i - (int)map[c] + gap;
gap += coolDown - distance + 1;
if(distance<= coolDown)
{
sum += coolDown - distance + 1;
}
map[c] = i + gap; ;
}
else
{
map.Add(c, i+gap);
}
}
return sum;
}


【在 e****s 的大作中提到】
: 1. Tasks: AABABCD
: Cooldown Time: 2
: A__AB_ABCD
: Output: 10
: 就是说同样类型的task之间至少要等2,每个task的执行时间是1
: followup: 如果cooldown是个参数,也就是说有可能会很长时间,怎么修改之前的程序
: 2. leetcode,three sum 不用sort 的n^2 代码
: 求教,有没有java 代码共享一下,打算学习一下。

c********t
发帖数: 5706
4
public static int cooldown(String s, int k){
if(s==null || s.isEmpty()) return 0;
int n = s.length();
if(k<=0) return n;
Map indexMap = new HashMap<>();
int inc=0;
for(int i=0; i char ch = s.charAt(i);
int depart=i+inc-indexMap.getOrDefault(ch, -k-1);
if(depart<=k) inc+=k-depart+1;
indexMap.put(ch, i+inc);
}
return n+inc;
}

【在 e****s 的大作中提到】
: 1. Tasks: AABABCD
: Cooldown Time: 2
: A__AB_ABCD
: Output: 10
: 就是说同样类型的task之间至少要等2,每个task的执行时间是1
: followup: 如果cooldown是个参数,也就是说有可能会很长时间,怎么修改之前的程序
: 2. leetcode,three sum 不用sort 的n^2 代码
: 求教,有没有java 代码共享一下,打算学习一下。

c********t
发帖数: 5706
5
2. How to handle duplicate then?

【在 e*******s 的大作中提到】
: 1. HashMap last cool down?
: A, 0
: A, 0 + cooldown
: B, 4
: 2. HashMap<> : keep 2 sum pairs, sum, them run again check.

c********t
发帖数: 5706
6
followup: 如果cooldown是个参数,也就是说有可能会很长时间,怎么修改之前的程序
cooldown很大,没看出需要怎么修改啊。哪位大牛说说?

【在 e****s 的大作中提到】
: 1. Tasks: AABABCD
: Cooldown Time: 2
: A__AB_ABCD
: Output: 10
: 就是说同样类型的task之间至少要等2,每个task的执行时间是1
: followup: 如果cooldown是个参数,也就是说有可能会很长时间,怎么修改之前的程序
: 2. leetcode,three sum 不用sort 的n^2 代码
: 求教,有没有java 代码共享一下,打算学习一下。

1 (共1页)
进入JobHunting版参与讨论
相关主题
问几个关于hash, map, set的问题Amazon 第一电面
弱弱的问问hash, hashtable?hashmap跟hash table有啥区别?
弱弱的问问intersection, union of two arrays or two sets ?弱问个数据结构的问题
解法讨论:(给定一个array和一个target,找出是否存在两个数之和为target)Bloomberg 电面
fb国内申请的曲折经历+电面常见的一个电面题
请教F最近超爱的面试题任务安排的follow up怎么做A公司面挂了,发面经,攒RP
今天Amazon的phone interview请问如何准备多线程问题
也问一个算法题几个Java面试题 (转载)
相关话题的讨论汇总
话题: cooldown话题: int话题: gap话题: sum话题: tasks