

Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
Quan sát hình:
`-` Tầng 1: 6 que
`-` Tầng 2: 6 * 2 - 2 (cạnh trùng tầng 1) - 1 (cạnh chung giữ 2 hình lục giác cùng tầng) = 9 que
`-` Tầng 3: 6 * 3 - 4 (cạnh trùng tầng 2) - 2 (cạnh chung giữa các hình lục giác cùng tầng = 12 que
`-` ...
`" "`
Nhận thấy 6, 9, 12, ... tạo thành cấp số cộng với `u_1 = 6` công sai `d = 3`
Công thức tính tổng cấp số cộng, tổng của n số hạng đầu
`S_n = ((u_1 + u_n)n) / 2`
Số que tầng thứ `n`: `u_n = u_1 + (n - 1)d = 6 + 3(n - 1) = 3n + 3`
Thay `u_n` ở trên vào công thức tính `S_n`
`S_n = ((6 + 3n + 3)n) / 2 = (3n^2 + 9n) / 2`
`" "`
Bài toán: cho N que tính, tìm số tầng cao nhất n sao cho `S_n <= N`
`(3n² + 9n) / 2 <= N`
`⇔ 3n² + 9n - 2N <= 0`
`" "`
Giải `3n² + 9n - 2N <= 0`
`Δ = b^2 - 4ac = 9^2 - 4.3.(-2N) = 81 + 24N`
Từ ràng buộc `1 <= N <= 10^15`, `N` luôn dương
Nghiệm `n_1 = (-b - sqrt(Δ)) / (2a) = (-9 - sqrt(81 + 24N)) / 6`, chắc chắn là số âm
Nghiệm `n_2 = (-b - sqrt(Δ)) / (2a) = (-9 + sqrt(81 + 24N)) / 6`, chắc chắn là số dương
`" "`
Vì `a = 3 > 0`, bất phương trình có tập nghiệm là đoạn nằm giữa hai nghiệm:
`n_1 <= n <= n_2`
Mà `n_1` âm, `n_2` dương, nên:
`0 < n <= n_2 = (-9 + sqrt(81 + 24N)) / 6`
`" "`
Vì `n` là số nguyên (số tầng), nên số tầng cao nhất chính là phần nguyên (làm tròn xuống) của `n_2`:
`n_max = ⌊(-9 + sqrt(81 + 24N)) / 6⌋`
`" "`
$\texttt{Chương trình Python}$
N = int(input())
n_max = int((-9 + (81 + 24*N) ** 0.5) // 6)
print(n_max)
`-` Ví dụ: a ** 0.5 = `sqrt(a)`
Hãy giúp mọi người biết câu trả lời này thế nào?
Bảng tin
219
4821
214
oeoeoe em xin lỗi chị già:<
11328
129665
6078
Wocaooooo💔
219
4821
214
chị này nay nhớ hd hay sao v:>
219
4821
214
lâu lắm r mới thấy rep tin nhắn fan đều vậy oeoeoe
319
4916
27
ko mắng bậy chị iu
319
4916
27
sao m nói nhiều thế, chị sham iu dấu quạu kìa :)
219
4821
214
chị ơi em xin lũi:<
219
4821
214
em hứa lần sau không tái phạm nữa