about summary refs log tree commit diff
path: root/others/mHoang/decor.py
diff options
context:
space:
mode:
Diffstat (limited to 'others/mHoang/decor.py')
-rwxr-xr-xothers/mHoang/decor.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/others/mHoang/decor.py b/others/mHoang/decor.py
new file mode 100755
index 0000000..a083f6d
--- /dev/null
+++ b/others/mHoang/decor.py
@@ -0,0 +1,15 @@
+#!/usr/bin/env python3
+
+# Dễ thấy các đèn đổi màu lẻ lần có màu xanh, chẵn lần màu đỏ.
+#
+# Xét đèn thứ i:
+# * Giả sử phân tích i thành các ước nguyên tố: i = p1 ** q1 + ... + pm ** qm,
+#   khi đó i sẽ có k = (q1 + 1) * ... * (qm + 1) ước nguyên dương.
+# * Đèn thứ i sẽ được đổi màu ở lần bấm công tắc nhận i làm bội, hay sẽ đổi màu
+#   k lần.
+# * k lẻ khi và chỉ khi q1 + 1, ..., qm + 1 đều lẻ hay q1, ..., qm đều chẵn tức
+#   là i là số chính phương.
+#
+# Vậy kết quả cần tìm là số số chính phương từ 1 đến n.
+
+print(int(int(input()) ** 0.5))