# 3ページ下のプログラム
# これをSpyderにコピーしなさい。
# ↓ここから
import time
import random
def f(N):
return N
N = int(input())
t1 = time.perf_counter()
print(f(N))
t2 = time.perf_counter()
print("{:10.6f}".format(t2 - t1))
# ↑ここまで
# 例1
# ↓ここから
def f(N):
count = 0
for i in range(N):
count += 1
return count
# ↑ここまで
# 例2
# ↓ここから
def f(N):
count = 0
for i in range(N):
for j in range(N):
count += 1
return count
# ↑ここまで
# 例3
# ↓ここから
def f(N):
count = 0
for i in range(N):
for j in range(N):
for k in range(N):
count += 1
return count
# ↑ここまで
# 素数:例1
# ↓ここから
def f(N):
if N == 1:
return 0
for i in range(2, N):
if N % i == 0:
return 0
return 1
# ↑ここまで
# 素数:例2
# ↓ここから
def f(N):
if N == 1:
return 0
i = 2
while i * i <=N:
if N % i == 0:
return 0
i += 1
return 1
# ↑ここまで
# 数当てゲーム:例1
# ↓ここから
def f(N):
count = 0
for i in range(100):
x = random.randint(1, N)
count += 1
while x != random.randint(1, N):
count += 1
return count
# ↑ここまで
# 数当てゲーム:例2
# ↓ここから
def f(N):
count = 0
for i in range(100):
x = random.randint(1, N)
a = 1
count += 1
while a != x:
a += 1
count += 1
return count
# ↑ここまで
# 数当てゲーム:例3
# ↓ここから
def f(N):
count = 0
for i in range(100):
x = random.randint(1, N)
a = 1
b = N
while a != b:
c = (a + b) // 2
count += 1
if x <= c:
b = c
else:
a = c + 1
return count
# ↑ここまで
# フィボナッチ数列:例1
# ↓ここから
def f(N):
if N < 2:
return 1
else:
return f(N - 1) + f(N - 2)
# ↑ここまで
# フィボナッチ数列:例2
# ↓ここから
def f(N):
if N < 2:
return 1
else:
a = b = 1
for i in range(N - 1):
a, b = a + b, a
return a
# ↑ここまで
# フィボナッチ数列:例3
# ↓ここから
def f(N):
if N not in f.memo:
f.memo[N] = f(N - 1) + f(N - 2)
return f.memo[N]
f.memo = {0:1, 1:1}
# ↑ここまで