<aside> ✏️ 2023 的新春紅包挑戰 WriteUp by FlyingSky (fsky7.com)
</aside>
<aside> 📣 2023 的新春紅包挑戰在 @Red_Packets 進行,本次活動由 @Laoself 、 @Hexagram_Daily 和 @EFW_inno 聯合舉辦,題目類型比較多元,數量也較多,獎品還是支付寶拼手氣口令紅包,希望各位玩得盡興。
挑戰問題將從 1.22 15:00 (UTC +8) 開始發佈,每分鐘發佈一題,每一題對應一個口令紅包。參與挑戰者按 @Red_Packets_Bot 提示提交答案。
</aside>
#技術向 #簡單 #byLaoself
Jpnt, ukt h[''[rp,j Frphu ]y[jyd.A p.][yu H[o,gdup[, ho,b h_! ,A P,u+ 1Z P,u | ph , ?2 = | ytuoy, = Q frpubk , | bdft 3A ytuoy, 3 bdft 4A ytuoy, 3 gthdo'uA ytuoy, h_, 1 3+ @ h_, 1 4+ Q Q ]yp,u_h_37++ }'tdft fom.pu ukt ]yp,utg ytfo'uz
标题明示和键盘有关,观察乱码认为是代码,根据缩进猜测 Q 应该是 },| 应该是 {。观察键盘,仅考虑可打印字符部分,应该是右移了两个键位(即 QWERT 变成了 ERTYU)。那么就把它往左移两个键位还原:
Given the following Swift program:
import Foundation
func f(_ n: Int) -> Int {
if n <= 0 { return 0 }
switch n {
case 1: return 1
case 2: return 1
default: return f(n - 1) + f(n - 2)
}
}
print(f(15))
Please submit the printed result.
阅读代码,答案是斐波那契数列的第 15 位:610(若是 Swift Developer 可以直接跑一遍代码,若是头铁可以拿出纸笔手算,但咱建议上 OEIS 查。)
#技術向 #中等 #byHexagram
https://spring-festival-red-envelope-2023.hexagr.am/
兩道題均無需修改或查看網頁源碼。
XXXXXXXD
提示1 -
U+提示2 - Circle Around

打开网页后的第一幕如图,根据脑洞,在输入框中输入字母 X(大小写均可)后点击 Apply 按钮。(C3、B2 也是这样,不再赘述。)

单击第一个图形(○)即可看见这一题的题面:
- Circle Around(此題的答案若出現英文則為小寫字母)
4D 6A 51 32 4D 51 3D 3D 70c445ee64b1ed0583367a12a79a9ef2 4D 6A 52 43 51 51 4D 6A 52 43 51 67
先看第一行,十六进制的特征很明显,转成字符后为 MjQ2MQ==,也很明显是 Base64,解码得到:2461。同理最后两行也如此解码,分别解得:24BA、24BB(题面最后两行按理也应该以 3D 3D 结尾,但不知为何没有)。
再看第二行,MD5 的特征也挺明显,猜测是这行原有字符串的 MD5 值,根据其他三行原文的特征,直接写代码爆破:
foreach (str_split('6789AB') as $a)
foreach (str_split('0123456789ABCDEF') as $b)
if (md5("24$a$b") == '70c445ee64b1ed0583367a12a79a9ef2')
print($str . PHP_EOL);
# 2464
最后,四行全部解码结果见下表,结合提示 1 不难想到 Unicode:
| 原文 | 对应的 Unicode 字符 |
|---|---|
| 2461 | ② |
| 2464 | ⑤ |
| 24BA | Ⓔ |
| 24BB | Ⓕ |