u*o
2 楼
最近这道题很火爆!我找来貌似最EFFICIENT的CODE看(就是传说中的SIEVE OF
ERATOSHENES,多高端的名字!!),发现这么一行
请大家看第三行,第四行。。。为什么要用MEMSET这个function呢。。bool
array的话默认就是0吧。。。是不是为了省MEMORY呢?我直觉是。。。
走过路过的牛牛们指点一下吧。。。
void runEratosthenesSieve(int upperBound) {
int upperBoundSquareRoot = (int)sqrt((double)upperBound);
bool *isComposite = new bool[upperBound + 1];
memset(isComposite, 0, sizeof(bool) * (upperBound + 1));
for (int m = 2; m <= upperBoundSquareRoot; m++) {
if (!isComposite[m]) {
cout << m << " ";
for (int k = m * m; k <= upperBound; k += m)
isComposite[k] = true;
}
}
for (int m = upperBoundSquareRoot; m <= upperBound; m++)
if (!isComposite[m])
cout << m << " ";
delete [] isComposite;
}
ERATOSHENES,多高端的名字!!),发现这么一行
请大家看第三行,第四行。。。为什么要用MEMSET这个function呢。。bool
array的话默认就是0吧。。。是不是为了省MEMORY呢?我直觉是。。。
走过路过的牛牛们指点一下吧。。。
void runEratosthenesSieve(int upperBound) {
int upperBoundSquareRoot = (int)sqrt((double)upperBound);
bool *isComposite = new bool[upperBound + 1];
memset(isComposite, 0, sizeof(bool) * (upperBound + 1));
for (int m = 2; m <= upperBoundSquareRoot; m++) {
if (!isComposite[m]) {
cout << m << " ";
for (int k = m * m; k <= upperBound; k += m)
isComposite[k] = true;
}
}
for (int m = upperBoundSquareRoot; m <= upperBound; m++)
if (!isComposite[m])
cout << m << " ";
delete [] isComposite;
}
m*l
3 楼
刚刚准备开始PERM申请,我在公司招聘网站上看到的我的职位job description
requirement 有写 master degree或是相关经验。但是经理递交给律所的job
description去掉了这一行。律师现在正在准备起草job description。
不知道如何跟经理说帮我加上这个master degree或是相关经验的requirement呢?还是
说这个是公司HR的决定,经理也只能follow policy? 我有一位中国同事跟我背景相近
但是公司没有走帮他EB2,HR给的原因是说职位不是senior level。
我本人从13年开始工作全职工作,在目前的公司一年。公司是大公司,可能有自己的
rule,请各位帮我出出主意?我需要过那几关?经理,HR,还有呢?谢谢!
requirement 有写 master degree或是相关经验。但是经理递交给律所的job
description去掉了这一行。律师现在正在准备起草job description。
不知道如何跟经理说帮我加上这个master degree或是相关经验的requirement呢?还是
说这个是公司HR的决定,经理也只能follow policy? 我有一位中国同事跟我背景相近
但是公司没有走帮他EB2,HR给的原因是说职位不是senior level。
我本人从13年开始工作全职工作,在目前的公司一年。公司是大公司,可能有自己的
rule,请各位帮我出出主意?我需要过那几关?经理,HR,还有呢?谢谢!
s*i
4 楼
Since when stores ask for name when customers pay with cash?
p*2
5 楼
这是啥东西呀?
c*3
6 楼
13年才开始工作,就是经验全部是当前公司取得的?那没法要求经验,只要学历的话50
%中招率。你自己多检查下JD再去和律师交涉吧
%中招率。你自己多检查下JD再去和律师交涉吧
u*o
8 楼
这个就是找kth prime number的算法啊。。二爷咋会不知呢,又逗我这个傻姑娘了。。
。
。
p*2
11 楼
这题我刚好昨天做了一下。能说说你的算法吗?
D*3
13 楼
吃官司? 你以为法律都是商店定的啊
p*2
14 楼
这个不太像是找第k个的呀。
r*n
17 楼
upperBound是什么?比如让你找第999个prime number,你怎么确定upperBound呢?
D*9
23 楼
明确一下fraud的定义
s*x
26 楼
今早突然想到, 仍然用筛子, 原先是用一个数去筛掉所有不是的, 你可以建立一个
已经得到的素数的 vector, 然后对每个数用这个 vector 的数来除就可以了。
vector primes;
primes.push_back(2);
for (int i=3; primes.size() < K; i+=2) {
bool isprime = true;
for(int j=0; j < primes.size(); j++) {
if (i % primes[j] == 0) {
isprime = false;
break;
}
}
if (isprime) primes.pushback(i);
}
return primes[K-1]; :)
已经得到的素数的 vector, 然后对每个数用这个 vector 的数来除就可以了。
vector
primes.push_back(2);
for (int i=3; primes.size() < K; i+=2) {
bool isprime = true;
for(int j=0; j < primes.size(); j++) {
if (i % primes[j] == 0) {
isprime = false;
break;
}
}
if (isprime) primes.pushback(i);
}
return primes[K-1]; :)
w*x
32 楼
传统的 SIEVE OF ERATOSHENES
Time complexity 怎么分析? wiki 是 nloglog(n)
Time complexity 怎么分析? wiki 是 nloglog(n)
相关阅读
评级百年首降,完美风暴上演,中国移民当前最需要的是什么?Got the cards (NSC EB2 PD 3/6/2007)Memo on Alternatives to Comprehensive Immi Reform绿绿绿了 PD 10/25/06请问stage in card/document production 是什么意思PD 09年9月 的 EB3How many RFEs can people get?惨了,second tier officer也不能打了谁能不能去问问到底最后一个月剩多少剩余名额联合NumbersUSA来fight against 新政策延H-1B, 一个月都没有收到收据file I-485以后马上被裁需要请下个公司重新申请绿卡吗?这个律师的网站名起得真好 -- 忽悠.com收到卡了。下个月要到8月1日请推荐移民律师郁闷: 有没有:485 收到approval notice, 可是card Production还未order7/11收到welcome notice,现在还没收到卡 TSC10月PD收到没见过的RFE,请帮忙解答Good News: NSC updating system is working now!