Browse Source

contest 1470

webturing 4 years ago
parent
commit
b4beb03fcf
20 changed files with 175 additions and 0 deletions
  1. 8 0
      1470A.py
  2. 18 0
      1470B.py
  3. 7 0
      1470Ca.py
  4. 9 0
      1470Cb.py
  5. 3 0
      1470D.py
  6. 12 0
      1470E.py
  7. 12 0
      1470E2.py
  8. 5 0
      1470F.py
  9. 7 0
      1470G.py
  10. 6 0
      1470H.py
  11. 14 0
      1470I.py
  12. 7 0
      1470J.py
  13. 11 0
      1470K.py
  14. 11 0
      1470L.py
  15. 13 0
      1470Ma.py
  16. 11 0
      1470Ma2.py
  17. 4 0
      1470Mb.py
  18. 5 0
      1470Mc.py
  19. 6 0
      1470Na.py
  20. 6 0
      1470Nb.py

+ 8 - 0
1470A.py

@@ -0,0 +1,8 @@
+n = int(input())
+while n > 1:
+    if n % 2 == 0:
+        print("{0}/2={1}".format(n, n // 2))
+        n //= 2
+    else:
+        print("{0}*3+1={1}".format(n, 3 * n + 1))
+        n = 3 * n + 1

+ 18 - 0
1470B.py

@@ -0,0 +1,18 @@
+F = [1] * 10
+# print(F)
+for i in range(1, len(F)):
+    F[i] = F[i - 1] * i
+# print(F)
+Z = []
+for n in range(1, 10 ** 7):
+    flag = False
+    m = n
+    s = 0
+    while m:
+        s += F[m % 10]
+        m //= 10
+    if s == n:
+        Z.append(str(n))
+Z.sort()
+for e in Z:
+    print(e, end=" ")

+ 7 - 0
1470Ca.py

@@ -0,0 +1,7 @@
+T = int(input().strip())
+for cas in range(T):
+    n = int(input().strip())
+    s = 0
+    for i in range(1, n + 1):
+        s += i * (i + 1) // 2
+    print(s)

+ 9 - 0
1470Cb.py

@@ -0,0 +1,9 @@
+for cas in range(int(input())):
+    n = int(input())
+    A = [1] * n
+    # print(A)
+    for i in range(1, len(A)): A[i] += A[i - 1]
+    # print(A)
+    for i in range(1, len(A)): A[i] += A[i - 1]
+    # print(A)
+    print(sum(A))

+ 3 - 0
1470D.py

@@ -0,0 +1,3 @@
+n = int(input())
+for i in range(1, n + 1):
+    print('*' * i)

+ 12 - 0
1470E.py

@@ -0,0 +1,12 @@
+n = int(input().strip())
+for i in range(n):
+    head, leg = map(int, input().strip().split())
+    flag = False
+    for chick in range(head + 1):
+        for hair in range(head + 1):
+            if chick + hair == head and chick * 2 + hair * 4 == leg:
+                print(chick, hair)
+                flag = True
+                break
+    if not flag:
+        print("No answer")

+ 12 - 0
1470E2.py

@@ -0,0 +1,12 @@
+n = int(input().strip())
+for i in range(n):
+    head, leg = map(int, input().strip().split())
+    flag = False
+    for chick in range(head + 1):
+        hair = n - chick
+        if chick + hair == head and chick * 2 + hair * 4 == leg:
+            print(chick, hair)
+            flag = True
+            break
+    if not flag:
+        print("No answer")

+ 5 - 0
1470F.py

@@ -0,0 +1,5 @@
+a, b = map(int, input().strip().split())
+for c in range(a + b, 0, -1):
+    if a % c == 0 and b % c == 0:
+        print(c)
+        break

+ 7 - 0
1470G.py

@@ -0,0 +1,7 @@
+while True:
+    n = int(input().strip())
+    s = 0
+    while n > 0:
+        s += n % 10
+        n //= 10
+    print(s)

+ 6 - 0
1470H.py

@@ -0,0 +1,6 @@
+while True:
+    n = int(input().strip())
+    s = 1
+    for i in range(n, 1, -2):
+        s *= i
+    print(s)

+ 14 - 0
1470I.py

@@ -0,0 +1,14 @@
+a = []
+for n in range(2, 1001):
+    s = 1
+    for i in range(2, n // 2 + 1):
+        if n % i == 0:
+            s += i
+    if s == n:
+        a.append(n)
+for n in a:
+    print(n, "its factors are 1", end="")
+    for i in range(2, n // 2 + 1):
+        if n % i == 0:
+            print("," + str(i), end="")
+    print("")

+ 7 - 0
1470J.py

@@ -0,0 +1,7 @@
+while True:
+    h, w = map(int, input().strip().split())
+    if h == w == 0:
+        break
+    for i in range(h):
+        print('#' * w)
+    print('')

+ 11 - 0
1470K.py

@@ -0,0 +1,11 @@
+while True:
+    h, w = map(int, input().strip().split())
+    if h == w == 0: break
+    for x in range(h):
+        for y in range(w):
+            if x == 0 or x == h - 1 or y == 0 or y == w - 1:
+                print('#', end="")
+            else:
+                print(".", end="")
+        print("")
+    print("")

+ 11 - 0
1470L.py

@@ -0,0 +1,11 @@
+while True:
+    h, w = map(int, input().strip().split())
+    if h == w == 0: break
+    for x in range(h):
+        for y in range(w):
+            if (x + y) % 2 == 0:
+                print('#', end="")
+            else:
+                print(".", end="")
+        print("")
+    print("")

+ 13 - 0
1470Ma.py

@@ -0,0 +1,13 @@
+for n in range(1100, 9999 + 1):
+    a = int(n / 1000)
+    b = int(n % 1000 / 100)
+    c = int(n % 100 / 10)
+    d = n % 10
+    if a != b or c != d: continue
+    flag = False
+    for x in range(32, 100):
+        if x * x == n:
+            flag = True
+            break
+    if not flag : continue
+    print(n)

+ 11 - 0
1470Ma2.py

@@ -0,0 +1,11 @@
+import math
+
+for n in range(1100, 9999 + 1):
+    a = int(n / 1000)
+    b = int(n % 1000 / 100)
+    c = int(n % 100 / 10)
+    d = n % 10
+    if a != b or c != d: continue
+    x = int(math.sqrt(n))
+    if x * x == n:
+        print(n)

+ 4 - 0
1470Mb.py

@@ -0,0 +1,4 @@
+for a in range(1, 10):
+    for b in range(10):
+        n = 1100 * a + b * 11
+        print(n)

+ 5 - 0
1470Mc.py

@@ -0,0 +1,5 @@
+for c in range(32, 100):
+    n = c * c
+    high, low = n // 100, n % 100
+    if high % 11 == 0 and low % 11 == 0:
+        print(n)

+ 6 - 0
1470Na.py

@@ -0,0 +1,6 @@
+n = 100
+for x in range(n + 1):
+    for y in range(n + 1):
+        for z in range(n + 1):
+            if x + y + z == n and 5 * x + 3 * y + z / 3 == n:
+                print(x, y, z)

+ 6 - 0
1470Nb.py

@@ -0,0 +1,6 @@
+n = 100
+for x in range(n // 5 + 1):
+    for y in range(n // 3 + 1):
+        z = n - x - y
+        if 5 * x + 3 * y + z / 3 == n:
+            print(x, y, z)