Redian新闻
>
大家都材料都是寄到TX的吗?
avatar
大家都材料都是寄到TX的吗?# Immigration - 落地生根
l*r
1
Given 3 sorted arrays, array a, array b, array c. find all pairs where a[i]
+ b[j] = c[k].
We can convert it to 3SUM for a nxn solution, but that doesn't used the "
sorted" property.
avatar
w*r
2
我的case是属于NSC的,看到律师给的邮寄地址是TX的。是不是大家的case都先寄到TX
然后转送到NSC的?谢谢。
EB1-A,今天终于要寄出了,bless!
avatar
e*r
4
和你律师再核对一遍吧。按照140官方instruction的地址来。如果是140的话,你属于
NSC,我想不出有什么理由可以寄到TX。
Bless

TX

【在 w**********r 的大作中提到】
: 我的case是属于NSC的,看到律师给的邮寄地址是TX的。是不是大家的case都先寄到TX
: 然后转送到NSC的?谢谢。
: EB1-A,今天终于要寄出了,bless!

avatar
r*c
5
怎么可能nlogn
可以有O(n^2)组解
avatar
x*g
6
排序数组本身无dup?

【在 r****c 的大作中提到】
: 怎么可能nlogn
: 可以有O(n^2)组解

avatar
e*s
7
这题用两个hash应该可以O(max(m,n) + l),m, n, l分别是a, b, c的长度。
avatar
x*g
8
展开说说,表示不解. hash求和的新思路也有兴趣学习,呵呵。
最差怎么都是o(n^2)
即使每个都无dup,像
A=1,2,3,4,5...n
B=n,n-1,....1
C=n+1,n+2......n+n
那么n+1就有n对
n+2就n-1对
...n+n就1对
计算n(n+1)/2.....

【在 e***s 的大作中提到】
: 这题用两个hash应该可以O(max(m,n) + l),m, n, l分别是a, b, c的长度。
avatar
e*s
9
之前看错题了,以为返回是否存在a[i] + b[j] = c[k]
但是复杂度是一样的。
public static boolean another3Sum(int[] A, int[] B, int[] C){
HashSet ha = new HashSet();
HashSet hb = new HashSet();
int i = 0, j = 0;
for(int k = 0; k < C.length; k++){
if(i < A.length && j < B.length){
if(A[i] + B[j] > C[k]){
if(ha.contains(C[k] - B[j]) || hb.contains(C[k] - A[i]))
return true;
}
else if (A[i] + B[j] < C[k]){
ha.add(A[i++]);
hb.add(B[j++]);
k--;
}
else return true;
} else if(i >= A.length){
if(ha.contains(C[k] - B[j])) return true;
else{
hb.add(B[j++]);
k--;
}
} else if(j >= B.length){
if(hb.contains(C[k] - A[i])) return true;
else{
ha.add(A[i++]);
k--;
}
}
}
return false;
}

【在 x****g 的大作中提到】
: 展开说说,表示不解. hash求和的新思路也有兴趣学习,呵呵。
: 最差怎么都是o(n^2)
: 即使每个都无dup,像
: A=1,2,3,4,5...n
: B=n,n-1,....1
: C=n+1,n+2......n+n
: 那么n+1就有n对
: n+2就n-1对
: ...n+n就1对
: 计算n(n+1)/2.....

avatar
x*g
10
这个显然不一样。
代码没细看,但觉得不可能对。
简单举个例子:
a[0]=3;
b[0]=4;
c[0]=6
所以冲上来
a[i]+b[j]>c[k]
但是不能满足
if(ha.contains(C[k] - B[j]) || hb.contains(C[k] - A[i]))
return true;
完了直接死循环了.....
懒得琢磨了,呵呵。

))

【在 e***s 的大作中提到】
: 之前看错题了,以为返回是否存在a[i] + b[j] = c[k]
: 但是复杂度是一样的。
: public static boolean another3Sum(int[] A, int[] B, int[] C){
: HashSet ha = new HashSet();
: HashSet hb = new HashSet();
: int i = 0, j = 0;
: for(int k = 0; k < C.length; k++){
: if(i < A.length && j < B.length){
: if(A[i] + B[j] > C[k]){
: if(ha.contains(C[k] - B[j]) || hb.contains(C[k] - A[i]))

avatar
e*s
11
我晕了,test case你跑过不?

【在 x****g 的大作中提到】
: 这个显然不一样。
: 代码没细看,但觉得不可能对。
: 简单举个例子:
: a[0]=3;
: b[0]=4;
: c[0]=6
: 所以冲上来
: a[i]+b[j]>c[k]
: 但是不能满足
: if(ha.contains(C[k] - B[j]) || hb.contains(C[k] - A[i]))

avatar
g*1
12
我觉得外星人挺有道理
不过好像在处理a或b到头时要考虑k++的情况

【在 x****g 的大作中提到】
: 这个显然不一样。
: 代码没细看,但觉得不可能对。
: 简单举个例子:
: a[0]=3;
: b[0]=4;
: c[0]=6
: 所以冲上来
: a[i]+b[j]>c[k]
: 但是不能满足
: if(ha.contains(C[k] - B[j]) || hb.contains(C[k] - A[i]))

avatar
x*g
13
确实,我没能理解对,挺好的,继续学习中。

【在 g****1 的大作中提到】
: 我觉得外星人挺有道理
: 不过好像在处理a或b到头时要考虑k++的情况

avatar
l*r
14
没搞懂. 大侠可不可以在明确一点?
avatar
g*1
15
嗯,好像有问题。一旦 a[i]+b[j]>c[k] 导致k++, 就失去了以后比较c[k]的机会

【在 x****g 的大作中提到】
: 确实,我没能理解对,挺好的,继续学习中。
avatar
e*s
16
因为3个数组都是sorted的, a[i]+b[j] > c[k] 证明 c[k] 肯定不能由a[0..i]和b[0.
.j]组合而成。

【在 g****1 的大作中提到】
: 嗯,好像有问题。一旦 a[i]+b[j]>c[k] 导致k++, 就失去了以后比较c[k]的机会
avatar
b*f
17
Mark
avatar
x*g
18
但是c[k]失去了由a[0..i]和b[j+1....n]或者a[i+1...]和b[0...j]构成的判定机会?
a 2 5 6
b 1 3 10
c 7 9
开始i=0;j=0;k=0;
2+1 < 7 所以 i++,j++,k不动
5+3 > 7 所以判定7-5,7-3失败,这个时候k++
所以7从此失去了判定的机会?没机会判出6+1=7这一项了。
不知道我看错没,不能怪我啊,这个写的太邪乎,呵呵。

0.

【在 e***s 的大作中提到】
: 因为3个数组都是sorted的, a[i]+b[j] > c[k] 证明 c[k] 肯定不能由a[0..i]和b[0.
: .j]组合而成。

avatar
e*s
19
确实是这样,我错了。
我也没想到能比 O(min(m * n, l))更好的了,m, n是3个数组长度较短的两个。

【在 x****g 的大作中提到】
: 但是c[k]失去了由a[0..i]和b[j+1....n]或者a[i+1...]和b[0...j]构成的判定机会?
: a 2 5 6
: b 1 3 10
: c 7 9
: 开始i=0;j=0;k=0;
: 2+1 < 7 所以 i++,j++,k不动
: 5+3 > 7 所以判定7-5,7-3失败,这个时候k++
: 所以7从此失去了判定的机会?没机会判出6+1=7这一项了。
: 不知道我看错没,不能怪我啊,这个写的太邪乎,呵呵。
:

avatar
s*t
20
我来写个最靠谱的:
先用young,O(n)搞定每一个c[k],一共n个c[k],O(n2)
不过没有利用上sorted的c这个条件,估计还是不太好。。。嘻嘻
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。