n1
>n1
+n2
ORn2
>n1
+n2
What two positive numbers can make this possible?
從題目可以看出來,題目要我們找到兩個數字滿足 n1
> n1
+ n2
OR n2
> n1
+ n2
這個情況,就會給我 flag
從原始碼驗證一下,直接看 main function,如果在 27 行的 if 判斷沒有辦法跳到 else 那邊,基本上就沒機會拿到 flag,而要跳到 else 的條件就是讓 addIntOvf(sum, num1, num2) == -1
成立
來看看 addIntOvf(sum, num1, num2)
怎麼運作的,第 4 行有說到如果可以輸入兩個整數 num1 和 num2,如果讓 num1, num2 都是正的但加總是負的或 num1, num2 都是負的但加總是正的,那就可以成功回傳 -1,單來說就是輸入兩個整數導致 overflow 就好
按照上述邏輯這樣輸入就成功了