aboutsummaryrefslogtreecommitdiff
path: root/works/life/2020-algorithm-contest/test-data/4/3.cpp
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-02-12 15:55:21 +0800
committerYuqian Yang <crupest@crupest.life>2025-02-12 15:55:21 +0800
commit10eb95869601e145b1d8bc909424777c25752d51 (patch)
tree49449a4076ded9bd937a51679318edbe2a532cae /works/life/2020-algorithm-contest/test-data/4/3.cpp
parent29ba3e88b1a7425fe00af0005b8a8228103aa21c (diff)
parentf8c10dd1fc55e60f35286475356e48c4f642eb63 (diff)
downloadcrupest-10eb95869601e145b1d8bc909424777c25752d51.tar.gz
crupest-10eb95869601e145b1d8bc909424777c25752d51.tar.bz2
crupest-10eb95869601e145b1d8bc909424777c25752d51.zip
import(life): IMPORT crupest/life COMPLETE.
Diffstat (limited to 'works/life/2020-algorithm-contest/test-data/4/3.cpp')
-rw-r--r--works/life/2020-algorithm-contest/test-data/4/3.cpp50
1 files changed, 50 insertions, 0 deletions
diff --git a/works/life/2020-algorithm-contest/test-data/4/3.cpp b/works/life/2020-algorithm-contest/test-data/4/3.cpp
new file mode 100644
index 0000000..20428a6
--- /dev/null
+++ b/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;
+}