When I use cyaron to generate data for problem "Castle" in 2018 luogu tg winter camp, when arguments satisfies m >= n - 1, it outputed 3 unconnected graphs. Follwing is generator:
from cyaron import *
from math import *
def is_prime(x):
s = int(math.sqrt(x)) + 1
for i in range(2, s):
if x % i == 0:
return False
return True
def wc():
if randint(1, 10) < 3:
return randint(0, 2000)
else:
return randint(2001, 10000)
n_ = [0]
for i in range(2, 100):
if is_prime(i):
n_.append(i)
for i in range(1, 26):
test_data = IO(file_prefix="castle", data_id=i)
n = n_[i];
if i >= 9 and i <= 10:
m = n - 1
elif i >= 17 and i <= 20:
m = n - 1
elif i == 1:
m = n - 1
elif i % 2 == 0:
m = randint(n, min(int(50. / i * n), n * (n - 1) / 2))
else:
m = randint(min(20 * n, n * (n - 1) / 2), n * (n - 1) / 2)
test_data.input_writeln(n, m)
print n, m
if m == n - 1:
graph = Graph.tree(n, 0.25, 0.25)
else:
graph = Graph.graph(n, m, self_loop=False, repeated_edges=False, weight_gen=wc)
for edge in graph.iterate_edges():
if edge.start > edge.end:
swap(edge.start, edge.end)
test_data.input_writeln(graph)
test_data.output_gen(".\castle.exe")
When I use cyaron to generate data for problem "Castle" in 2018 luogu tg winter camp, when arguments satisfies
m >= n - 1
, it outputed 3 unconnected graphs. Follwing is generator: