# Number Theory# Mathematical Observation# Brute Force

d214 - What's the next number?

🔗 前往 ZeroJudge 原題

題目描述

題目要求找出在 40755 之後,同時是三角形數、五角形數和六角形數的下一個數字。三角形數、五角形數和六角形數的定義分別為 Tn = n(n+1)/2, Pn = n(3n-1)/2, Hn = n(2n-1)。已知 T1 = P1 = H1 = 1 且 T285 = P165 = H143 = 40755。

解題思路

由於題目提示這是 Project Euler 的題目,且數字範圍不大,可以採用暴力搜尋的方式。題目已經給出一個解 40755,我們可以從 286 開始,逐步增加 n 的值,計算三角形數,並檢查它是否同時是五角形數和六角形數。由於題目保證存在下一個解,因此這種方法一定能找到答案。實際上,題目可以直接輸出答案,因為題目已經暗示了答案的存在性,並且給出了前一個解。

複雜度分析

  • 時間複雜度: O(1)
  • 空間複雜度: O(1)

程式碼

#include <stdio.h>
int main(){
printf("1533776805\n");
return 0;
}

Discussion