昨天分享了如何通过参与JetBrains的解密任务来获取正版全家桶的兑换码。今天 JetBrains 一早继续在Twitter推出第二波任务:
下面,我们就继续来一起参与一下,为我们的正版JetBrains全家桶续个命!
线索一:Twitter
第一条线索还是比较容易的,通过观察不难发现,Twitter上推出字符串中的单词是倒置的!
所以,我们写个小程序来处理一下:
@Test
public void jetbrains() {
String str = ".spleh A+lrtC/dmC .thgis fo tuo si ti semitemos ,etihw si txet nehw sa drah kooL .tseretni wohs dluohs uoy ecalp a si ,dessecorp si xat hctuD erehw esac ehT .sedih tseuq fo txen eht erehw si ,deificeps era segaugnal cificeps-niamod tcudorp ehT" ;
String[] split = str.split(" ");
String result = "";
for (int i =0;i < split.length;i++) {
result += new StringBuffer(split[i]).reverse() + " ";
}
System.out.println(result);
}
得到如下内容:
helps. Cmd/Ctrl+A sight. of out is it sometimes white, is text when as hard Look interest. show should you place a is processed, is tax Dutch where case The hides. quest of next the where is specified, are languages domain-specific product The
貌似还不对,句子是反的!改造一下上面的算法:
@Test
public void jetbrains() {
String str = ".spleh A+lrtC/dmC .thgis fo tuo si ti semitemos ,etihw si txet nehw sa drah kooL .tseretni wohs dluohs uoy ecalp a si ,dessecorp si xat hctuD erehw esac ehT .sedih tseuq fo txen eht erehw si ,deificeps era segaugnal cificeps-niamod tcudorp ehT" ;
String[] split = str.split(" ");
String result = "";
for (int i = 0;i < split.length;i++) {
result += new StringBuffer(split[split.length - 1 - i]).reverse() + " ";
}
System.out.println(result);
}
获取完整句子如下:
The product domain-specific languages are specified, is where the next of quest hides. The case where Dutch tax is processed, is a place you should show interest. Look hard as when text is white, sometimes it is out of sight. Cmd/Ctrl+A helps.
线索二:The product domain-specific languages
根据线索一的提示:Dutch tax is processed
,搜索一下看看:
找到这里,点击Read MPS case study
,进入下面这个PDF
继续想线索一的另外一个提示:白色背景看不到,需要Cmd/Ctrl+A
帮助!
可以看到有一段空白地方是有东西的,我们选中复制出来:
This is our 20th year as a company,
we have shared numbers in our JetBrains
Annual report, sharing the section with
18,650 numbers will progress your quest.
线索三:20周年报告
根据线索二得到的那段话,我们找到JetBrains的20周年页面:https://www.jetbrains.com/company/annualreport/2019/
继续根据线索二的提示,找一下数字:18,650
。直接搜索是没找到,看来可能又是要做啥变换吧,仔细看这个页面。
原来是这里的数字加起来等于18,650
。点下分享,看到任务描述:
I have found the JetBrains Quest! Sometimes you just need to look closely at the Haskell language, Hello,World! in the hackathon lego brainstorms project https://blog.jetbrains.com/blog/2019/11/22/jetbrains-7th-annual-hackathon/ #JetBrainsQuest https://www.jetbrains.com/company/annualreport/2019/ 来自 @JetBrains
大意就是你需要仔细查看Haskell语的Hello World,在hackathon lego brainstorms项目中。
线索三:hackathon lego brainstorms project
通过线索提示中的链接进入https://blog.jetbrains.com/blog/2019/11/22/jetbrains-7th-annual-hackathon
。
搜索lego brainstorms
,可以看到之前提示的要素:
在图中有一段乱码需要我们翻译,通过页面审查工具,可以获得这段文字:
d1D j00 kN0w J378r41n2 12 4lW4Y2 H1R1N9? ch3CK 0u7 73h K4r33r2 P493 4nD 533 1f 7H3r3 12 4 J08 F0r J00 0R 4 KW357 cH4LL3n93 70 90 fUr7h3r @ l3457.
这段卡了很久,后来看网上说这尼玛是英文版的火星文,大致找到一些对应关系主要是字符与实际字母的形状相似、发音相似等规律,比如:1=i、3=e、0=O、7=t...,连蒙带猜大致就是这段话:
Did you know Jetbrains is always hiring? Check out the careers page and see if there is a job for you or for quest challenge to go further at least.
大致意思是他们一直在招聘,到招聘页面有一个工作在等待你去接受挑战。
线索四:招聘页的挑战
根据上面的线索,直冲:https://www.jetbrains.com/jobs/
搜索“quest”,可以看到这个职位:
点击进入职位介绍,可以找到这段关键指引:
它叫我们去为游戏开发者准备的页面。同时记住你以前在Konami游戏中作弊的方法,尝试一下在这个页面上作弊!
找了很久没找到游戏开发者页面,只能去Google搜了一波,得到这个地址:https://www.jetbrains.com/gamedev/
炫酷的页面!下面请上:Konami游戏中作弊的方法!
在输入秘籍之后,会进入一个打砖块的游戏:
消除掉所有砖块之后就能看到本次挑战的最后结果信息啦!
这次DD就不放最终结果啦!强烈推荐读者们一起从线索一开始玩玩这个有趣的解密游戏!体会思考、解决问题的成就感!最后在为你的正版JetBrains全家桶续上三个月!
这次放上我的截图吧,亲测有效!还一直留言说无效、垃圾的,建议再多试试。
作弊直接获取结果
依然推荐自己玩一下,实在没耐心就从下面获取吧:
- 关注公众号「程序猿DD」
- 回复关键词:jetbrains第二弹,直接获取领奖地址和领奖Code!