aboutsummaryrefslogtreecommitdiff
path: root/store/works/life/2020-algorithm-contest/test-data/4
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-02-28 23:13:39 +0800
committerYuqian Yang <crupest@crupest.life>2025-02-28 23:13:39 +0800
commit99e2e923d0c77b02f3fb4ff648ea916954868606 (patch)
treeec8e03f6f2cd1ce43990fb4fe6cd631967d0237e /store/works/life/2020-algorithm-contest/test-data/4
parent1cee979f5d36b311a03cc7397a036ba11caf3d42 (diff)
downloadcrupest-99e2e923d0c77b02f3fb4ff648ea916954868606.tar.gz
crupest-99e2e923d0c77b02f3fb4ff648ea916954868606.tar.bz2
crupest-99e2e923d0c77b02f3fb4ff648ea916954868606.zip
chore(store): move everything to store.
Diffstat (limited to 'store/works/life/2020-algorithm-contest/test-data/4')
-rw-r--r--store/works/life/2020-algorithm-contest/test-data/4/1.in3
-rw-r--r--store/works/life/2020-algorithm-contest/test-data/4/2.in5
-rw-r--r--store/works/life/2020-algorithm-contest/test-data/4/3.cpp50
3 files changed, 58 insertions, 0 deletions
diff --git a/store/works/life/2020-algorithm-contest/test-data/4/1.in b/store/works/life/2020-algorithm-contest/test-data/4/1.in
new file mode 100644
index 0000000..d9d2898
--- /dev/null
+++ b/store/works/life/2020-algorithm-contest/test-data/4/1.in
@@ -0,0 +1,3 @@
+3 4 2
+0 3
+1 0
diff --git a/store/works/life/2020-algorithm-contest/test-data/4/2.in b/store/works/life/2020-algorithm-contest/test-data/4/2.in
new file mode 100644
index 0000000..afe3aef
--- /dev/null
+++ b/store/works/life/2020-algorithm-contest/test-data/4/2.in
@@ -0,0 +1,5 @@
+3 4 4
+0 3
+1 0
+1 2
+2 1
diff --git a/store/works/life/2020-algorithm-contest/test-data/4/3.cpp b/store/works/life/2020-algorithm-contest/test-data/4/3.cpp
new file mode 100644
index 0000000..20428a6
--- /dev/null
+++ b/store/works/life/2020-algorithm-contest/test-data/4/3.cpp
@@ -0,0 +1,50 @@
+#include <iostream>
+#include <random>
+#include <set>
+#include <algorithm>
+
+struct Point
+{
+ int x;
+ int y;
+};
+
+bool operator<(const Point &left, const Point &right)
+{
+ return left.x == right.x ? left.y < right.y : left.x < right.x;
+}
+
+int main()
+{
+ std::default_random_engine engine{39};
+ const int size = 20;
+ const int b_size = 50;
+ std::uniform_int_distribution<> distribution(0, size - 1);
+ std::cout << size << ' ' << size << ' ' << b_size << '\n';
+
+ std::set<Point> b;
+
+ while (b.size() < b_size)
+ {
+ int x = distribution(engine);
+ int y = distribution(engine);
+
+ if (x == 0 && y == 0)
+ continue;
+ if (x == size - 1 && y == size - 1)
+ continue;
+
+ b.insert({x, y});
+ }
+
+ std::vector<Point> bb(b.cbegin(), b.cend());
+
+ std::shuffle(bb.begin(), bb.end(), engine);
+
+ for (const auto &p : bb)
+ {
+ std::cout << p.x << ' ' << p.y << '\n';
+ }
+
+ return 0;
+}