The Prime Number Call Girl Chapter 1 (A Fiction)

不咖群里的Hiro君,发出一张照片,如下。

比武招亲

对于编程挑战题目,我一直是比较惧怕的,但是Hiro稍后单独微信我询问:“这个题你们程序员用暴力破解应该很容易吧?”
已经被人家堵着门问专业知识了,我不得不奋起为自己的职业身份做出相应的证明。解题的大概思路如下:

  • 什么是质数 (对不起我已经不是万能的高中生了)
  • 质数的英语说法 prime number
  • Find a badly prime number npm package
  • Coding:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var isPrime = require('prime-number')
let target = 707829217
let ps = [];
for(let i = 0; i < 100000;i++ ){
if(isPrime(i)){
ps.push(i);
}
}
function find(){
for (let i = 0; i < ps.length; i++) {
const v1 = ps[i];
for (let j = 0; j < ps.length; j++) {
const v2 = ps[j];
if(v1 * v2 === target){
return [v1,v2]
}
}
}
return[0,0]
}
console.log(find());

比较顺利地得出了结果 [ 8171, 86627 ] 所以按照题目要求的拼接方式,这个土著大妞的微信号码应该是 NY866278171,我心怀得意地去加了对方的微信,并回答了附加题目的答案。在不咖群里@了Hiro,结果却是被春风成功地带跑偏了。That’s fine,我心里没想着要跟人家开新的分支,这个比较初级的编程题目应该很多人解得出,所以就不要再继续纠葛了,权当是做了一道幽默智力题。

两天之后我刚刚下班,忽然收到了这位‘吃不胖’的微信回复。

“hi,不好意思之前没有开这个微信,因为发出去很久也没人找到这儿。”
我十分礼貌地首先表明了我的已婚已育身份,并再三声称对她的四合院和小别墅都没有什么野心。可是这位姑娘却再三要求能不能找机会一起喝杯咖啡,就当是交个朋友。距离她说的位置,只需要两站地铁的距离,英雄不能失之交臂,带着为什么这样一道并不难的题目却为什么没有很多人攻克的疑虑,我于晚上8点37分迈入了前往东直门2号线车厢。

见面地点是一个叫Jamoson的Cafe,咖啡和酒都在卖,作为一个油腻的中年程序员,在进店之前,我对自己隐藏在胡子下的浮肿的脸以及汗油浸了一天的T恤造成的土颓外观产生了片刻的迟疑。不过,我渐渐开始接受自己的就是这样一个自己的事实,找了个背静的地方坐下来,掏出吉田兼好的一本口袋书,先来了一杯Expresso压压惊。

某人擅长爬树,某日被一位贵人请去指导这位贵人爬树,爬树专家在树下看着这位贵人渐渐爬上树梢,然后又一点点爬下来,就在距离地面很近的时候,他向着贵人大声喊到:“小心一点啊!注意慢慢爬下来!”
旁观的人问道:“刚才在最高点的时候,你怎么不提醒他呢?现在眼看着就要下来了,你反而这么大声提示他?”
爬树专家回答道:“当他在最高点的时候,恐惧足矣提醒他要多加小心了,大部分错误都发生在你认为最容易的阶段。”

桌面被一只白皙的小手轻轻敲击了几下,本来没把这次约见当回事的我,在抬头的一瞥之后,惊慌失措地合上书,一种本能的讨好之情溢于言表。
“您是王大地吧?”
“可以是,可以是,啊,就是就是。”
“我叫周柏妮~”
姑娘悦耳的北京话瞬间就安抚了我心里的大马鹿。她拉开座椅,坐下,一只手将波波头一侧的头发别到左耳后,露出了十分细小的六芒星耳钉。

“等半天了吧真不好意思刚才有点儿事儿,我们弄了一民宿,就在这后面。刚才走了一波客人,我去收拾收拾

在看到这位姑娘穿的花裙子之前我一直以为我只是喜欢穿极简黑白灰风格长裙的姑娘的。姑娘的花裙子花得十分有层次,我断不出产地,只觉得应该是地中海那一圈儿的。她身上的味道特别好闻。

我们不知不觉把饭吃了,谁也没提要喝酒,期间她问我是做哪一类软件开发的,我把之前跟投资人汇报的架势拿出来,好好地扯了一阵儿。这顿饭在风平浪静地AA付账后结束了。我觉得我的年龄和长相都没有达到对方的预期,还是回寝室好好Netflix之夜吧。
跟我这样的人相谈甚欢的姑娘,十有八九是想借助你的软件开发技能做点什么吧,其实没人在意你技术栈是什么,读什么书,玩什么游戏,喜欢什么人。我带着这样的想法,悻悻地睡了。

两天后的下午,姑娘忽然发来一个Github的链接,里面只有一个shell脚本,运行后会链接到一个mongodb atlas,shell脚本的注释里面请我写一个Aggregation,要求输出一个联系人列表中年龄小于28岁,雅思分数高于8.5分,并且在2012年和2015年间同时攻读剑桥大学的HSPS学位与斯坦福大学MS&E学位的女性,按照生日排序后最年轻的一位的联系方式。要求查询执行时间小于100毫秒。之后将答案Post到一个对应的接受地址。
这条信息之后,对方就已经删除了我的微信。

由于已经生疏了MongoDB的相关技能,我十分笨拙地花了半个小时才查出来结果,我发现目标指向的这位神奇的姑娘叫Stephanie Chow,她的internship描述是,At pornhub.com, content development. 联系方式是一个email,我写了一封十分简短的邮件。

Hi

半小时后我收到了一封回复邮件

Call me, 18xxxxxxxxx

to be continued