about summary refs log tree commit diff
path: root/others/mHoang/decor.py
diff options
context:
space:
mode:
authorRaphael McSinyx <vn.mcsinyx@gmail.com>2017-01-01 20:42:05 +0700
committerRaphael McSinyx <vn.mcsinyx@gmail.com>2017-01-01 20:42:05 +0700
commitc67182c04491f2cf8b67e78b68aebf32aea25470 (patch)
treed82d7fd5478dffb1348143c67cbb330955dbf0f8 /others/mHoang/decor.py
parent70f37066d2d368a2810a2be209ae0bd8b391293b (diff)
downloadcp-c67182c04491f2cf8b67e78b68aebf32aea25470.tar.gz
Update others/{mHoang,mkcal}
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))