蟻本 1-6 ハードルが上がった「くじびき」
code: python
n = int(input())
m = int(input())
k = list(map(int, input().split()))
def binary_search(x):
l = 0
r = n * n
while (r - 1 >= 1):
i = (l + r) // 2
if (kki == x):
return True
elif (kki < x):
l = i + 1
else:
r = i
return False
kk = 0 * (n*n)
# kc + kd の取り得る数を列挙
for c in range(n):
for d in range(n):
kkc * n + d = kc + kd # 00 01 02 10 11 12
# 二分探索を行うため
kk.sort()
f = False
for a in range(n):
for b in range(n):
# kc + kd = m - ka -kb となる c,d があるか調べる代わりに二分探索
if (binary_search(m - ka -kb)):
f = True
print("Yes") if f else print("No")
テーマ
#bisect