Redian新闻
>
World's Best Cat Litter Petsmart 小袋装5.99 or 6.49
avatar
World's Best Cat Litter Petsmart 小袋装5.99 or 6.49# pets - 心有所宠
w*a
1
一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
site。
第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
,上题目:
1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素
,并分析复杂度。其实就是binary search的变体,但是需要考虑两种A[m]中值的情况
加以判断。
2. 他谈到facebook的log,如果每个log文件有10 billion行,每行包括t
avatar
d*u
2
怎么都是On Feb 27,......有几个是Feb 24,23
难道USCIS不是每天都拆信么?还是因为这些数据都是集中在27号输入的????
avatar
l*n
3
下午去Petsmart逛了一下。 发现我们这的店World's Best Cat Litter 小袋装(7磅)促销5.99 or 6.49。(Sale持续到3月21号)原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49. 能用Petsmart 5off25 的话就更好了。
不过可能各地价钱不一样。 也不知道是不是所有的Petsmart 都是这个促销价。 大家想买的话可以去看看。
avatar
w*e
4
牛。。。

【在 w******a 的大作中提到】
: 一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
: 要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
: 话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
: ,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
: 哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
: 让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
: site。
: 第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
: ,上题目:
: 1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素

avatar
A*R
6
Are you going to use the rebate from the manufacturer too?
They can rebate up to $12.99 if I remember it correctly.
I am looking to get some too.

7磅)促销5.99 or 6.49。原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49.
能用Petsmart 5off25 的话就更好了。
家想买的话可以去看看。

【在 l***n 的大作中提到】
: 下午去Petsmart逛了一下。 发现我们这的店World's Best Cat Litter 小袋装(7磅)促销5.99 or 6.49。(Sale持续到3月21号)原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49. 能用Petsmart 5off25 的话就更好了。
: 不过可能各地价钱不一样。 也不知道是不是所有的Petsmart 都是这个促销价。 大家想买的话可以去看看。

avatar
w*a
7
第一个rotated array问题,参考程序如下:
rotated array
==找元素 key
int rotated_binary_search(int key, int A[], int L, int R) {
if (L > R) return -1;
// Avoid overflow, same as M=(L+R)/2
int M = L + ((R - L) / 2);
if (A[M] == key) return M;
if (A[M] >= A[L]) {
if (key < A[M] && key >= A[L])
R = M - 1;
else
L = M + 1;
} else {
if (key > A[M] && key <= A[R])
L = M + 1;
else
R = M - 1;
}
return rotated_b
avatar
c*s
8
re
avatar
l*n
9
上周原价的时候我买了几袋。 就用上周的做一个rebate。 但只能回来8.49啦。我这只有7磅装的。没有8磅的。 7磅最贵的原价是8.49.

【在 A*********R 的大作中提到】
: Are you going to use the rebate from the manufacturer too?
: They can rebate up to $12.99 if I remember it correctly.
: I am looking to get some too.
:
: 7磅)促销5.99 or 6.49。原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49.
: 能用Petsmart 5off25 的话就更好了。
: 家想买的话可以去看看。

avatar
j*l
10
如果数组已经是排序好的,是否规定rotation的位置点是0?
另外,如果L = 0, R = 1
那么M = 0
A[M-1]会数组下标越界
int FindSortedArrayRotation(int A[], int L, int R) {
if (L > R) return 0;
// Avoid overflow, same as M=(L+R)/2
int M = L + ((R - L) / 2);
if (A[M] < A[M-1])
return M;
avatar
A*R
11
Why don't you get an 17 lbs or 35 lbs bag so you can get more rebate from
manufacturer? You are going to need them anyway.
avatar
f*5
12
你这个还是越界把?

【在 j**l 的大作中提到】
: 如果数组已经是排序好的,是否规定rotation的位置点是0?
: 另外,如果L = 0, R = 1
: 那么M = 0
: A[M-1]会数组下标越界
: int FindSortedArrayRotation(int A[], int L, int R) {
: if (L > R) return 0;
: // Avoid overflow, same as M=(L+R)/2
: int M = L + ((R - L) / 2);
: if (A[M] < A[M-1])
: return M;

avatar
l*n
13
买小袋的可以多用几个5OFF厂家胖子啊。再用上PETSMART的5OFF25,就非常便宜了。

【在 A*********R 的大作中提到】
: Why don't you get an 17 lbs or 35 lbs bag so you can get more rebate from
: manufacturer? You are going to need them anyway.

avatar
f*5
14
你这算法不对
A[M] < A[M-1] return M
明显不对

【在 j**l 的大作中提到】
: 如果数组已经是排序好的,是否规定rotation的位置点是0?
: 另外,如果L = 0, R = 1
: 那么M = 0
: A[M-1]会数组下标越界
: int FindSortedArrayRotation(int A[], int L, int R) {
: if (L > R) return 0;
: // Avoid overflow, same as M=(L+R)/2
: int M = L + ((R - L) / 2);
: if (A[M] < A[M-1])
: return M;

avatar
l*n
15
另外, 我没记错的话, REBATE只限7磅或8磅的。

【在 A*********R 的大作中提到】
: Why don't you get an 17 lbs or 35 lbs bag so you can get more rebate from
: manufacturer? You are going to need them anyway.

avatar
S*n
16
赞!
赶快写第三部分吧!
祝拿到offer! :)
avatar
P*o
17
mark,下班去看看

7磅)促销5.99 or 6.49。原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49.
能用Petsmart 5off25 的话就更好了。
家想买的话可以去看看。

【在 l***n 的大作中提到】
: 下午去Petsmart逛了一下。 发现我们这的店World's Best Cat Litter 小袋装(7磅)促销5.99 or 6.49。(Sale持续到3月21号)原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49. 能用Petsmart 5off25 的话就更好了。
: 不过可能各地价钱不一样。 也不知道是不是所有的Petsmart 都是这个促销价。 大家想买的话可以去看看。

avatar
j*l
18
faint, 我只是原文一字不动摘抄了他的代码片断,说明下标可能越界,并没有给出我
的fix

【在 f*********5 的大作中提到】
: 你这个还是越界把?
avatar
A*R
19
You are right.
Where can I get petsmart's coupon?
Thanks much!

【在 l***n 的大作中提到】
: 另外, 我没记错的话, REBATE只限7磅或8磅的。
avatar
j*l
20
他的思路还是对的,
比如 4 5 6 7 8 1 2 3, 1就是转折点,
转折点的特点是,比左边的相邻元素要小。
他是想用二分查找的思想来找出这个转折点,但边界情况没有完整考虑。

【在 f*********5 的大作中提到】
: 你这算法不对
: A[M] < A[M-1] return M
: 明显不对

avatar
l*n
21
抬头, 看置顶

【在 A*********R 的大作中提到】
: You are right.
: Where can I get petsmart's coupon?
: Thanks much!

avatar
f*5
22
hehe
sorry...

【在 j**l 的大作中提到】
: faint, 我只是原文一字不动摘抄了他的代码片断,说明下标可能越界,并没有给出我
: 的fix

avatar
l*n
23
呵呵, 多谢包子!

【在 P******o 的大作中提到】
: mark,下班去看看
:
: 7磅)促销5.99 or 6.49。原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49.
: 能用Petsmart 5off25 的话就更好了。
: 家想买的话可以去看看。

avatar
f*5
24
这两个程序的一个共同问题就是性能差。
直接
while(L〈R)
{}
一个loop就结束了
用递归明显性能上差很多阿

【在 w******a 的大作中提到】
: 第一个rotated array问题,参考程序如下:
: rotated array
: ==找元素 key
: int rotated_binary_search(int key, int A[], int L, int R) {
: if (L > R) return -1;
: // Avoid overflow, same as M=(L+R)/2
: int M = L + ((R - L) / 2);
: if (A[M] == key) return M;
: if (A[M] >= A[L]) {
: if (key < A[M] && key >= A[L])

avatar
A*R
25
Today is the last day :-( Dont' think i can make it.

【在 l***n 的大作中提到】
: 抬头, 看置顶
avatar
f*5
26
which one will u return for
8 7 6 5 4 3 2 1
no A[m]
【在 j**l 的大作中提到】
: 他的思路还是对的,
: 比如 4 5 6 7 8 1 2 3, 1就是转折点,
: 转折点的特点是,比左边的相邻元素要小。
: 他是想用二分查找的思想来找出这个转折点,但边界情况没有完整考虑。

avatar
l*n
27
不是吧?
offer expires 2 weeks from 02/24/2010

【在 A*********R 的大作中提到】
: Today is the last day :-( Dont' think i can make it.
avatar
m*i
28
bless. got the offer yet?
avatar
A*R
29
My bad, you are right :-)
My mimi said "Thank you" too. I can use the saving to buy her more toys...

【在 l***n 的大作中提到】
: 不是吧?
: offer expires 2 weeks from 02/24/2010

avatar
l*a
30
我觉得lz假设了数组是升序且rotate了的。
你的反例是降序无rotate。

【在 f*********5 的大作中提到】
: which one will u return for
: 8 7 6 5 4 3 2 1
: no A[m]
avatar
h*o
31
可以打一堆coupon买一堆,一起check out么……
avatar
j*l
32
是很多A[m] < A[m-1]吧
而且这个不符合rotation的定义,不是循环升序

【在 f*********5 的大作中提到】
: which one will u return for
: 8 7 6 5 4 3 2 1
: no A[m]
avatar
l*n
33
You are welcome!

【在 A*********R 的大作中提到】
: My bad, you are right :-)
: My mimi said "Thank you" too. I can use the saving to buy her more toys...

avatar
j*l
34
又发现一个bug
对test case
4 5 6 1 2 3, 应该返回1的下标,结果返回的是下标0
首先是[4 5 6 1 2 3], 判断6
然后是[1 2 3], 判断2
然后是[3], 返回0
avatar
l*n
35
我一次买了九袋, 扫光了货架上的。 用了一个PETSMART 5OFF25,9张厂家胖子。
CASHIER很不错, 没说啥, 刷刷刷的胖子都给我扫了。
周末打算再去看看进货没, 再屯一些。

【在 h*******o 的大作中提到】
: 可以打一堆coupon买一堆,一起check out么……
avatar
w*a
36
呵呵,没消息,还在等呢。不过想好了,即使给offer,多半也不去了。老实说,主要
是自己coding差,感觉FB注重coding又快又好,而不是鼓励新idea,至少我和六个人谈
感觉是这样。这样的话,我到了那里会很辛苦,长处用不上,短处被人鄙视。对未来发
展没啥好处。
FB最为人诟病的每天push code听说倒是改了,一般情况下一周push一次。

【在 m*******i 的大作中提到】
: bless. got the offer yet?
avatar
t*u
37
manufacturer rebate每家这一年只能一次吧?就是说到12/31之前,那个manufacturer
MIR最多拿到12.99?
7磅的假设说是6刀一包的话,是不是这样:
先用上$5的,厂商print rebate,变成1刀一包
这样得凑齐25包,才到25刀,然后再用petsmart 5off,变成了25包20刀
然后再MIR 讨回原价的6刀,变成这次总共是14刀买了25包?
问题是:我怀疑我们这里都没有25包那么多,很可能petsmart的5off用不上
是这样最划算吗?
avatar
w*a
38
那个rotated数组找元素的,是有些bug,原先是从一个习题集的答案里搬来的,自己没
写test cases。脸红一个。
avatar
t*u
39
还有个问题
petsmart的5 off说不能和别的discount啥的一起叠用,这个manufacturer的算叠用吗
avatar
f*5
40
定义从哪里来的?请share,谢谢
排序数组没说一定是升序吧?

【在 j**l 的大作中提到】
: 是很多A[m] < A[m-1]吧
: 而且这个不符合rotation的定义,不是循环升序

avatar
l*n
41
manufacturer rebate每家一年是一次。
先用petsmart的5off, 再用manufacturer 5off胖子。这样一单只要胖子前总额超过25
就行了。另外注意不要出现所有胖子后SUBTOTAL成负数。如果买5.99的话, 可以买6袋
, 用完所有胖子后SUBTOTOAL 是0.94, 再加稅钱。 petsmart的5off不能叠用, 我
的理解是不能再和 petsmart的其它off胖子叠用。例如, 用了petsmart的5off, 就不
能再用petsmart的10%off,但可以再用manufacturer的胖子。一般manufacturer胖子都
可以和店家自己的胖子叠用的。

manufacturer

【在 t*****u 的大作中提到】
: manufacturer rebate每家这一年只能一次吧?就是说到12/31之前,那个manufacturer
: MIR最多拿到12.99?
: 7磅的假设说是6刀一包的话,是不是这样:
: 先用上$5的,厂商print rebate,变成1刀一包
: 这样得凑齐25包,才到25刀,然后再用petsmart 5off,变成了25包20刀
: 然后再MIR 讨回原价的6刀,变成这次总共是14刀买了25包?
: 问题是:我怀疑我们这里都没有25包那么多,很可能petsmart的5off用不上
: 是这样最划算吗?

avatar
j*l
42
降序的情况考虑类似,所以不失一般性,可以认为是升序。

【在 f*********5 的大作中提到】
: 定义从哪里来的?请share,谢谢
: 排序数组没说一定是升序吧?

avatar
l*n
43
如果CASHIER 不让用PETSMART的5OFF,也没关系, 用上manufacturer胖子后就已经是太
便宜了。
我一开始也是尝试用的PETSMART5OFF, CASHIER让用的话就用,不让用就算了。

【在 t*****u 的大作中提到】
: 还有个问题
: petsmart的5 off说不能和别的discount啥的一起叠用,这个manufacturer的算叠用吗
: ?

avatar
f*5
44
sigh
这个不能做假设,至少要问清楚吧
我的判断是split点是最大点
a[m]>a[(m-1+N)%N] && a[m]>a[(m+1)%N]
i think it covered all the situation

【在 j**l 的大作中提到】
: 降序的情况考虑类似,所以不失一般性,可以认为是升序。
avatar
b*e
45
我跟你们说说petsmart苦胖的用法吧
先把东西给他扫,这时候扫出来的是原价,3包就25了
然后再给5 off 25,再给petsmart卡,再给冒沙苦胖
这样最后是(6.5*3-5)*(1+tax)-5*3=差不多0
如果给乱棍打出不要说是我教你的

manufacturer

【在 t*****u 的大作中提到】
: manufacturer rebate每家这一年只能一次吧?就是说到12/31之前,那个manufacturer
: MIR最多拿到12.99?
: 7磅的假设说是6刀一包的话,是不是这样:
: 先用上$5的,厂商print rebate,变成1刀一包
: 这样得凑齐25包,才到25刀,然后再用petsmart 5off,变成了25包20刀
: 然后再MIR 讨回原价的6刀,变成这次总共是14刀买了25包?
: 问题是:我怀疑我们这里都没有25包那么多,很可能petsmart的5off用不上
: 是这样最划算吗?

avatar
H*r
46
有点笨,欢迎拍砖
1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素
// Ranged search
// returns index or size if not found
bool FindInRotatedArray(const std::vector &rotatedArray,
int iVal,
unsigned int &index,
unsigned int leftIndex,
unsigned int rightIndex)
{
while (leftIndex < rightIndex)
{
if (rotatedArray.at(leftIndex)==iVal)
{
// found!
index = leftIn

【在 w******a 的大作中提到】
: 一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
: 要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
: 话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
: ,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
: 哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
: 让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
: site。
: 第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
: ,上题目:
: 1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素

avatar
b*y
47
不用5off25的coupon也只需要$3.22,如果用了岂不是他们该倒给我钱了?

【在 b*****e 的大作中提到】
: 我跟你们说说petsmart苦胖的用法吧
: 先把东西给他扫,这时候扫出来的是原价,3包就25了
: 然后再给5 off 25,再给petsmart卡,再给冒沙苦胖
: 这样最后是(6.5*3-5)*(1+tax)-5*3=差不多0
: 如果给乱棍打出不要说是我教你的
:
: manufacturer

avatar
j*l
48
首先,是否可以假定没有重复元素?有重复元素的话更复杂
比如
2 2 2 4 4 5 2 2
假定没有重复元素
int FindSortedArrayRotation(int A[], int L, int R)
{
assert(L >= 0 && R >= 0 && L <= R);
if (A[L] <= A[R])
return L;
if (R - L <= 2)
{
// 最多三个元素,穷举
return L or (L + 1) or (L + 2)
}
int M = L + ((R - L) / 2);
if (A[M] < A[M-1])
return M;
if (A[M] >= A[L])
return FindSortedArrayRotation(A, M+1, R);
else
return FindSortedArrayRotation(A, L, M-1);
}

【在 j**l 的大作中提到】
: 又发现一个bug
: 对test case
: 4 5 6 1 2 3, 应该返回1的下标,结果返回的是下标0
: 首先是[4 5 6 1 2 3], 判断6
: 然后是[1 2 3], 判断2
: 然后是[3], 返回0

avatar
b*e
49
冒沙苦胖是税后的,加上水应该还是要掏几个钢崩的,你不要买便宜的那种,太显眼

【在 b*******y 的大作中提到】
: 不用5off25的coupon也只需要$3.22,如果用了岂不是他们该倒给我钱了?
avatar
f*5
50
这题有重复的话就是O(N)了

【在 j**l 的大作中提到】
: 首先,是否可以假定没有重复元素?有重复元素的话更复杂
: 比如
: 2 2 2 4 4 5 2 2
: 假定没有重复元素
: int FindSortedArrayRotation(int A[], int L, int R)
: {
: assert(L >= 0 && R >= 0 && L <= R);
: if (A[L] <= A[R])
: return L;
: if (R - L <= 2)

avatar
l*n
51
呵呵,以后还要经常去PETSMART(只有一家),不敢OOP太少, 让CASHIER记住。
我一般一单加稅都要付个7, 8 块

【在 b*****e 的大作中提到】
: 冒沙苦胖是税后的,加上水应该还是要掏几个钢崩的,你不要买便宜的那种,太显眼
avatar
p*u
52
谢谢freemail165提醒,最开始写的有问题,下面是修改过的版本。
写一个第一题的C程序,假设是升序的,没有重复元素:
int bsearch(int *A, int size, int wanted)
{
int left = 0;
int right = size - 1;
int mid;
while (left <= right) {
mid = (left + right) / 2;
if (A[mid] == wanted) {
return mid;
} else if (wanted >= A[0]) {
if (A[mid] > wanted) {
right = mid - 1;
} else {
if (A[mid] >= A[0]) {
left = mid + 1;
} e

【在 w******a 的大作中提到】
: 一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
: 要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
: 话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
: ,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
: 哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
: 让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
: site。
: 第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
: ,上题目:
: 1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素

avatar
t*u
53
是不是还是买7/8磅的小袋划算?因为厂商rebate是对每袋5off的吧
avatar
p*u
54
第三题没啥好的想法,目前更倾向于用的方法是:
Facebook应该不止会计算一个月以内访问量最大的N个网页,一定也会计算一周以内,
一个季度以内或者一年以内的吧。
所以,我想是否应该都记录下来这样一些信息呢?前K天的各个网页的访问量。由于
timestamp都是排序好的,所以有前K天推到前(K + 1)天,也是很方便的。把这些数据
都写到磁盘上,用的时候再读入内存就好了。
那样要计算某一个区间[a, b]内的网页访问量的时候,就直接用前b天减去前(a - 1)天
的就好了。
现在已知了某一个区间的网页访问量之后,要求访问量最大的N个网页。可以用一个大
小为N的最小堆的结构。当发现某个值大于堆顶元素的值是,弹出堆顶元素,把当前这
个值压入堆中。这样把所有访问量扫一遍,最后留在堆中的就是最大的N个了。

【在 w******a 的大作中提到】
: 一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
: 要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
: 话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
: ,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
: 哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
: 让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
: site。
: 第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
: ,上题目:
: 1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素

avatar
l*n
55
对呀。 厂商rebate一般是按胖子前的价钱。买一袋还可以倒赚5块呢。

【在 t*****u 的大作中提到】
: 是不是还是买7/8磅的小袋划算?因为厂商rebate是对每袋5off的吧
avatar
f*5
56
your logic is wrong when
A[mid]>wanted>A[0]

【在 p*u 的大作中提到】
: 第三题没啥好的想法,目前更倾向于用的方法是:
: Facebook应该不止会计算一个月以内访问量最大的N个网页,一定也会计算一周以内,
: 一个季度以内或者一年以内的吧。
: 所以,我想是否应该都记录下来这样一些信息呢?前K天的各个网页的访问量。由于
: timestamp都是排序好的,所以有前K天推到前(K + 1)天,也是很方便的。把这些数据
: 都写到磁盘上,用的时候再读入内存就好了。
: 那样要计算某一个区间[a, b]内的网页访问量的时候,就直接用前b天减去前(a - 1)天
: 的就好了。
: 现在已知了某一个区间的网页访问量之后,要求访问量最大的N个网页。可以用一个大
: 小为N的最小堆的结构。当发现某个值大于堆顶元素的值是,弹出堆顶元素,把当前这

avatar
b*y
57
想问问红包装的和绿包装的有什么不同?我对比了一下,好象绿包装的猫沙跟我在
petfooddirect买的那种大包装的一样。那红色的那种究竟要好多少?价钱上的区别并
不大。

【在 b*****e 的大作中提到】
: 冒沙苦胖是税后的,加上水应该还是要掏几个钢崩的,你不要买便宜的那种,太显眼
avatar
p*u
58
谢谢提醒,确实有问题,感觉应该再加上wanted和A[0]的比较。
原帖中已经更新。

【在 f*********5 的大作中提到】
: your logic is wrong when
: A[mid]>wanted>A[0]

avatar
b*e
59
据说便宜的吸喂更好,红色的事multicat formula

【在 b*******y 的大作中提到】
: 想问问红包装的和绿包装的有什么不同?我对比了一下,好象绿包装的猫沙跟我在
: petfooddirect买的那种大包装的一样。那红色的那种究竟要好多少?价钱上的区别并
: 不大。

avatar
p*o
60
CON!! and good luck!
avatar
t*u
61
下午见OB,对面就是petsmart
去扛了架子上的剩下的5袋绿色的
红色的也在on sale
绿色的标着6.49,结果扫出来5.99,也搞不明白了
结果5off25的不让我用,理由跟我说的一样。反正意思是,就算5刀是厂商的,也不能
叠加。反正已经够便宜了,我也不好意思了。
最后0.99每袋买了5袋
打算过两天换身衣服把剩下的补货也屯了来
临走我说,你们需要re stock了,都被我扛走了。他说,嗯,我们后面还很多。所以估
计后天我就会去继续屯了……希望到时候还是5.99 on sale
avatar
l*a
62
这个也有问题。
如果split点的值有重复的话。

【在 f*********5 的大作中提到】
: sigh
: 这个不能做假设,至少要问清楚吧
: 我的判断是split点是最大点
: a[m]>a[(m-1+N)%N] && a[m]>a[(m+1)%N]
: i think it covered all the situation

avatar
s*r
63
avatar
f*5
64
在你这个前提下,你认为怎么解呢?

【在 l*****a 的大作中提到】
: 这个也有问题。
: 如果split点的值有重复的话。

avatar
h*o
65
汗,去晚了,都被你抗走了……
我把货架上剩的十包红的给弄走了,反正也挺划算……
coupon真是好啊,check out的时候营业员姐姐都惊呆了~
我下周再去看看,或者杀去petco看看……

【在 t*****u 的大作中提到】
: 下午见OB,对面就是petsmart
: 去扛了架子上的剩下的5袋绿色的
: 红色的也在on sale
: 绿色的标着6.49,结果扫出来5.99,也搞不明白了
: 结果5off25的不让我用,理由跟我说的一样。反正意思是,就算5刀是厂商的,也不能
: 叠加。反正已经够便宜了,我也不好意思了。
: 最后0.99每袋买了5袋
: 打算过两天换身衣服把剩下的补货也屯了来
: 临走我说,你们需要re stock了,都被我扛走了。他说,嗯,我们后面还很多。所以估
: 计后天我就会去继续屯了……希望到时候还是5.99 on sale

avatar
D*h
66
赞!
收藏
avatar
m*h
67
最近试了一下Swheat Scoop,好像味道控制更好,比world's best便宜好多啊

【在 t*****u 的大作中提到】
: 下午见OB,对面就是petsmart
: 去扛了架子上的剩下的5袋绿色的
: 红色的也在on sale
: 绿色的标着6.49,结果扫出来5.99,也搞不明白了
: 结果5off25的不让我用,理由跟我说的一样。反正意思是,就算5刀是厂商的,也不能
: 叠加。反正已经够便宜了,我也不好意思了。
: 最后0.99每袋买了5袋
: 打算过两天换身衣服把剩下的补货也屯了来
: 临走我说,你们需要re stock了,都被我扛走了。他说,嗯,我们后面还很多。所以估
: 计后天我就会去继续屯了……希望到时候还是5.99 on sale

avatar
i*e
68
http://www.ihas1337code.com/2010/04/searching-element-in-rotated-array.html
这是我写的代码吧,竟然被贴出来了,FindSortedArrayRotation()还被揪出bug来(感
谢jntl),当初没好好测试...
rotated_binary_search() 的代码我重新测试了一下,应该是对的,前提是数组没有重
复的元素。如果数组有重复的元素,那只能用linear search。给个最坏情况,数组里
找 1:
000000000000000100000
也就是说,binary search的变种不管用了。不一个一个挨着找是不可能找到 1 的。
freemail165,你说的没错,递归实在是没必要,用一个 while loop 就搞定了。基于
是 tail recursion,转换成 while loop 很直接,我就不多说了。
我重写了一下 FindSortedArrayRotation,找 rotation 的位置点。其思路是找数组里
的最小元素的位置,就是 rotation 的位置点。怎么找最小元素呢?
首先,我们有三个值:一个左边,一个中间,一个右边。
把中间的元素跟右边的比较,如果中间大于右边,那么我们可以完全放弃它+它左边所
有的元素,因为最小值根本不可能在左边。
相反,如果中间小于右边,那么最小值肯定是中间或者比它左边的元素。所以可以完全
放弃它右边所有元素。
int FindSortedArrayRotation(int A[], int n) {
int L = 0;
int R = n - 1;

while (A[L] > A[R]) {
int M = L + (R - L) / 2;
if (A[M] > A[R])
L = M + 1;
else
R = M;
}
return L;
}
测试数据有:
{ 1 }
return 0
{ 1, 2 }
return 0
{ 2, 1 }
return 1
{ 1, 2, 3 }
return 0
{ 3, 1, 2 }
return 1
{ 2, 3, 1 }
return 2
{ 1, 2, 3, 4, 5 }
return 0
{ 2, 3, 4, 5, 1 }
return 4
{ 3, 4, 5, 1, 2 }
return 3
{ 4, 5, 1, 2, 3 }
return 2
{ 5, 1, 2, 3, 4 }
return 1
{ 1, 2, 3, 4, 5, 6 }
return 0
{ 2, 3, 4, 5, 6, 1 }
return 5
{ 3, 4, 5, 6, 1, 2 }
return 4
{ 4, 5, 6, 1, 2, 3 }
return 3
{ 5, 6, 1, 2, 3, 4 }
return 2
{ 6, 1, 2, 3, 4, 5 }
return 1
{ 6, 8, 1, 2, 4, 5 }
return 2
一些常见面试题的答案与总结 -
http://www.ihas1337code.com

【在 w******a 的大作中提到】
: 第一个rotated array问题,参考程序如下:
: rotated array
: ==找元素 key
: int rotated_binary_search(int key, int A[], int L, int R) {
: if (L > R) return -1;
: // Avoid overflow, same as M=(L+R)/2
: int M = L + ((R - L) / 2);
: if (A[M] == key) return M;
: if (A[M] >= A[L]) {
: if (key < A[M] && key >= A[L])

avatar
t*u
69
哇哈哈!我已经好心提醒经理他们需要补存货了。而且我只扛了5带绿的。没好意思再
扛红的……
准备周末继续战斗!
petco也有么?倒是更近一些呢

【在 h*******o 的大作中提到】
: 汗,去晚了,都被你抗走了……
: 我把货架上剩的十包红的给弄走了,反正也挺划算……
: coupon真是好啊,check out的时候营业员姐姐都惊呆了~
: 我下周再去看看,或者杀去petco看看……

avatar
j*u
70
3. pratical的方法是按天process,sort好存起来,这样任意几天的都可以merge
因为pageview一般符合long tail,merge的时候一般每天取比如top 100就可以了

【在 w******a 的大作中提到】
: 一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
: 要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
: 话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
: ,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
: 哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
: 让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
: site。
: 第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
: ,上题目:
: 1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素

avatar
h*o
71
哈哈,打了十张coupon去没想到都能用到哈~
红的是6.49,绿的是5.99,应该是他们标错了~
我刷coupon的时候,小二还有点疑惑,找了她领导来,看了半天,我心里那个虚啊~
我在petco买过大袋的,小袋的不知道有没有~

【在 t*****u 的大作中提到】
: 哇哈哈!我已经好心提醒经理他们需要补存货了。而且我只扛了5带绿的。没好意思再
: 扛红的……
: 准备周末继续战斗!
: petco也有么?倒是更近一些呢

avatar
j*u
72
赶紧FB有点BT,experienced的还要on-site两次才进formal interview,不够
efficient也不尊重interviewee的时间
而且只面算法也挺无聊的,个人感觉
对于experienced的candidate,纯算法的coding在实际工作中能占多大比例?远不如
OOD,system design,performance/threading重要吧。。

【在 w******a 的大作中提到】
: 一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
: 要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
: 话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
: ,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
: 哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
: 让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
: site。
: 第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
: ,上题目:
: 1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素

avatar
o*y
73
啊,我怎么从来找不到 Petsmart 的coupon,网上 code 有时还能 google 到,店里的
哪找呢?

【在 l***n 的大作中提到】
: 我一次买了九袋, 扫光了货架上的。 用了一个PETSMART 5OFF25,9张厂家胖子。
: CASHIER很不错, 没说啥, 刷刷刷的胖子都给我扫了。
: 周末打算再去看看进货没, 再屯一些。

avatar
c*2
74
int binary_search_rotation(int a[], int l, int u, int x)
{
int m;
while (l <= u) {
m = (l + u) / 2;
if (x == a[m]) {
return m;
}
else if (a[l] <= a[m]) {
if (x > a[m]) {
l = m+1;
}
else if (x >=a [l]) {
u = m-1;
} else {
l = m+1;
}
}
else if (x < a[m]) u = m-1;
else if (x <= a[u]) l = m+1;
else u = m - 1;
}
return -1;
}
avatar
z*e
76
new idea??
you must be kidding me...

【在 w******a 的大作中提到】
: 呵呵,没消息,还在等呢。不过想好了,即使给offer,多半也不去了。老实说,主要
: 是自己coding差,感觉FB注重coding又快又好,而不是鼓励新idea,至少我和六个人谈
: 感觉是这样。这样的话,我到了那里会很辛苦,长处用不上,短处被人鄙视。对未来发
: 展没啥好处。
: FB最为人诟病的每天push code听说倒是改了,一般情况下一周push一次。

avatar
y*u
77
俺这个未来猫妈都存了16袋了。带着CHILI去囤货,CHILI还骗人家CASHIER的吹吹吃
。所以俺就没用5OFF25
avatar
i*e
78
According to programming pearls, your code will have bug in the line:
m = (l + u) / 2;
This will cause overflow when l and u is large.
一些常见面试题的答案与总结 -
http://www.ihas1337code.com

【在 c***2 的大作中提到】
: int binary_search_rotation(int a[], int l, int u, int x)
: {
: int m;
: while (l <= u) {
: m = (l + u) / 2;
: if (x == a[m]) {
: return m;
: }
: else if (a[l] <= a[m]) {
: if (x > a[m]) {

avatar
b*2
79
今天已经有人被打出来了,大伙注意安全
avatar
S*r
80
恩,我也觉得除非是酷爱编程,要不去这种公司还是不太爽。尤其是PhD,一般长处根
本发挥不出来。

【在 j*****u 的大作中提到】
: 赶紧FB有点BT,experienced的还要on-site两次才进formal interview,不够
: efficient也不尊重interviewee的时间
: 而且只面算法也挺无聊的,个人感觉
: 对于experienced的candidate,纯算法的coding在实际工作中能占多大比例?远不如
: OOD,system design,performance/threading重要吧。。

avatar
P*o
81
报告一下,清了一家petsmart,10袋红包,5off25也用了
明天再去清下一家。。 hiahia
avatar
r*d
82
非常赞同这个
实际工作中面试的这些用到的很少, 就算需要用到的去goole就出来一堆, 所以面试
这些很可笑也浪费时间
不过, 既然都面试这个还是得去准备准备。。。。。

【在 j*****u 的大作中提到】
: 赶紧FB有点BT,experienced的还要on-site两次才进formal interview,不够
: efficient也不尊重interviewee的时间
: 而且只面算法也挺无聊的,个人感觉
: 对于experienced的candidate,纯算法的coding在实际工作中能占多大比例?远不如
: OOD,system design,performance/threading重要吧。。

avatar
s*r
83
haha

【在 b*****2 的大作中提到】
: 今天已经有人被打出来了,大伙注意安全
avatar
g*e
84
想起一道题,1,2,3,4->shift left by k=2=>3,4,1,2。求对应array和k,要求完成
shift right/left的高效率算法

【在 w******a 的大作中提到】
: 一不小心,上次写的面经第一部分上了十大推荐。太激动了,谢谢斑斑奖励的包子。还
: 要特别感谢aeon同学送的大包子。(第一部分在这里:http://www.mitbbs.com/article_t/JobHunting/31659453.html
: 话说第一次on-site,我本人自己感觉良好,觉着题目都做出来了,虽然有些多余变量
: ,也没关系吧。于是喜滋滋的等着那轮四个人的interview。没想到,过了几天,HR哥
: 哥写信来,说面试官觉得我写程序不够快不够简洁,建议再来coding的面试。无语,谁
: 让咱不是那种在whiteboard上写code如流水的牛人,只好灰溜溜的同意再来一次on-
: site。
: 第二次是一个很nice的哥哥面我,一直微笑,在我卡壳的时候,也都提示我。废话少说
: ,上题目:
: 1. 一个rotated的排序整数数组,比如A=[6,8,1,2,4,5],写code找一个给定元素

avatar
t*u
85
昨天抗了6绿4红
不好意思,剩了一袋红的
然后今天去,只剩那一代红的了……连后面都没库存了
那个sale到3.21,所以还有希望屯够我家一年的娃哈哈
avatar
l*n
87
嗯, 昨天去没货了, 小二也告诉我SALE到三月。 这下不用着急了, 可以慢慢屯了
哈哈

【在 t*****u 的大作中提到】
: 昨天抗了6绿4红
: 不好意思,剩了一袋红的
: 然后今天去,只剩那一代红的了……连后面都没库存了
: 那个sale到3.21,所以还有希望屯够我家一年的娃哈哈

avatar
y*u
88
俺已经屯乐20包乐,汗。。。。
avatar
m*a
89
请问哪里能找到厂家的5 off胖子啊,多谢!!!

)促销5.99 or 6.49。(Sale持续到3月21号)原价是7.99 or 8.49. 用上厂家5off胖子
才0.99 or 1.49. 能用Petsmart 5off25 的话就更好了。
家想买的话可以去看看。

【在 l***n 的大作中提到】
: 下午去Petsmart逛了一下。 发现我们这的店World's Best Cat Litter 小袋装(7磅)促销5.99 or 6.49。(Sale持续到3月21号)原价是7.99 or 8.49. 用上厂家5off胖子才0.99 or 1.49. 能用Petsmart 5off25 的话就更好了。
: 不过可能各地价钱不一样。 也不知道是不是所有的Petsmart 都是这个促销价。 大家想买的话可以去看看。

avatar
P*o
90
置顶的有
http://www.worldsbestcatlitter.com/landingpages/moderncat/Worlds-Best-Coupon.pdf

【在 m******a 的大作中提到】
: 请问哪里能找到厂家的5 off胖子啊,多谢!!!
:
: )促销5.99 or 6.49。(Sale持续到3月21号)原价是7.99 or 8.49. 用上厂家5off胖子
: 才0.99 or 1.49. 能用Petsmart 5off25 的话就更好了。
: 家想买的话可以去看看。

avatar
A*R
92
是的,我在用,还可以冲到马桶里,是eco-friendly 的。 可是我家的猫好想还是喜欢
旧猫沙

【在 S********t 的大作中提到】
: 这个猫砂也是结块可以舀出来的对吧
avatar
w*y
93
恩恩,赞一个,这个coupon真是好用。coupon没打够,今天只扛了4包绿的。明天继续
。我另外还没了两包猫粮,四个罐头,可以跟5off25叠用。
avatar
y*u
94
这个周末又屯乐10包,好像打折价今天结束。

【在 w****y 的大作中提到】
: 恩恩,赞一个,这个coupon真是好用。coupon没打够,今天只扛了4包绿的。明天继续
: 。我另外还没了两包猫粮,四个罐头,可以跟5off25叠用。

avatar
l*n
95
我一共屯了七十多包。 前两天想再屯最后一次, 货架上两种一共八袋, 全拿了。 去
小二那付钱。 拿出胖子, 小二准备扫。 没想到经理来了, 说一天只让用一个胖子。
于是只好买一袋走人。这两天也就懒得再去了。以前用多少胖子都没人管的。 估计是
我前段扫货太频繁(只有一家PETSMART), 而且每次都是一大堆胖子, 某些小二向经
理汇报了。其实我都还挺注意的, 一般一次最多买十袋, 一个礼拜去两次。 就是怕
小二注意呢。 好在我也屯够了。加上以前买的其它猫砂,三猫够用两年了。

【在 y*********u 的大作中提到】
: 这个周末又屯乐10包,好像打折价今天结束。
avatar
y*u
96
你。。。这也太牛了。俺存了30就觉得很自豪了。俺每次还买点别的,LD说俺丢西瓜
捡芝麻
avatar
b*t
97
偶像阿!

【在 l***n 的大作中提到】
: 我一共屯了七十多包。 前两天想再屯最后一次, 货架上两种一共八袋, 全拿了。 去
: 小二那付钱。 拿出胖子, 小二准备扫。 没想到经理来了, 说一天只让用一个胖子。
: 于是只好买一袋走人。这两天也就懒得再去了。以前用多少胖子都没人管的。 估计是
: 我前段扫货太频繁(只有一家PETSMART), 而且每次都是一大堆胖子, 某些小二向经
: 理汇报了。其实我都还挺注意的, 一般一次最多买十袋, 一个礼拜去两次。 就是怕
: 小二注意呢。 好在我也屯够了。加上以前买的其它猫砂,三猫够用两年了。

avatar
b*t
98
很惭愧得说,我一共就买了两包小的。一直懒得去折腾。这两包小的买的也很不顺利,
让我伤心了。
avatar
b*t
99
不过遥控某人,屯了12包,哈哈,绵绵以后一年的屎尿有着落了
avatar
l*n
100
嗯, 我有一次也是遥控LD去买的。经理就在小二旁边。可能就是那次经理注意上了,
还专门问我LD胖子是从哪来的。不过那次还让我LD用了十张胖子。等我自己过几天再去
就只让我用一张了。

【在 b***t 的大作中提到】
: 不过遥控某人,屯了12包,哈哈,绵绵以后一年的屎尿有着落了
avatar
l*n
101
汗, 为了家里的小家伙们就厚着脸皮上了。

【在 y*********u 的大作中提到】
: 你。。。这也太牛了。俺存了30就觉得很自豪了。俺每次还买点别的,LD说俺丢西瓜
: 捡芝麻

avatar
l*o
102
我只屯了5包就没货了。:(
avatar
b*y
103
我买了三袋以后就过了2天,周围的两个商店就没货了。
avatar
b*e
104
你比较牛,我也就屯了差不多50包

【在 l***n 的大作中提到】
: 我一共屯了七十多包。 前两天想再屯最后一次, 货架上两种一共八袋, 全拿了。 去
: 小二那付钱。 拿出胖子, 小二准备扫。 没想到经理来了, 说一天只让用一个胖子。
: 于是只好买一袋走人。这两天也就懒得再去了。以前用多少胖子都没人管的。 估计是
: 我前段扫货太频繁(只有一家PETSMART), 而且每次都是一大堆胖子, 某些小二向经
: 理汇报了。其实我都还挺注意的, 一般一次最多买十袋, 一个礼拜去两次。 就是怕
: 小二注意呢。 好在我也屯够了。加上以前买的其它猫砂,三猫够用两年了。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。