From 95422138588572e08a1ee78e654741874f11cfa0 Mon Sep 17 00:00:00 2001 From: omagdy7 Date: Thu, 10 Nov 2022 16:05:26 +0200 Subject: Added some new problems --- cses/SortingAndSearching/Apartments/main | Bin 0 -> 63000 bytes cses/SortingAndSearching/Apartments/main.cpp | 25 +++++++++------ .../SortingAndSearching/Apartments/main_input0.txt | 3 ++ .../Apartments/main_output0.txt | 1 + cses/SortingAndSearching/FerrisWheel/main | Bin 0 -> 44536 bytes cses/SortingAndSearching/FerrisWheel/main.cpp | 34 +++++++++++++++++++++ .../FerrisWheel/main_input0.txt | 2 ++ .../FerrisWheel/main_input1.txt | 1 + .../FerrisWheel/main_input2.txt | 2 ++ .../FerrisWheel/main_input3.txt | 2 ++ .../FerrisWheel/main_output0.txt | 1 + .../FerrisWheel/main_output1.txt | 1 + .../FerrisWheel/main_output2.txt | 1 + .../FerrisWheel/main_output3.txt | 1 + 14 files changed, 65 insertions(+), 9 deletions(-) create mode 100755 cses/SortingAndSearching/Apartments/main create mode 100644 cses/SortingAndSearching/Apartments/main_input0.txt create mode 100644 cses/SortingAndSearching/Apartments/main_output0.txt create mode 100755 cses/SortingAndSearching/FerrisWheel/main create mode 100644 cses/SortingAndSearching/FerrisWheel/main.cpp create mode 100644 cses/SortingAndSearching/FerrisWheel/main_input0.txt create mode 100644 cses/SortingAndSearching/FerrisWheel/main_input1.txt create mode 100644 cses/SortingAndSearching/FerrisWheel/main_input2.txt create mode 100644 cses/SortingAndSearching/FerrisWheel/main_input3.txt create mode 100644 cses/SortingAndSearching/FerrisWheel/main_output0.txt create mode 100644 cses/SortingAndSearching/FerrisWheel/main_output1.txt create mode 100644 cses/SortingAndSearching/FerrisWheel/main_output2.txt create mode 100644 cses/SortingAndSearching/FerrisWheel/main_output3.txt (limited to 'cses') diff --git a/cses/SortingAndSearching/Apartments/main b/cses/SortingAndSearching/Apartments/main new file mode 100755 index 0000000..946f3f6 Binary files /dev/null and b/cses/SortingAndSearching/Apartments/main differ diff --git a/cses/SortingAndSearching/Apartments/main.cpp b/cses/SortingAndSearching/Apartments/main.cpp index ce2b1ae..676f338 100644 --- a/cses/SortingAndSearching/Apartments/main.cpp +++ b/cses/SortingAndSearching/Apartments/main.cpp @@ -3,22 +3,29 @@ using namespace std; +#define all(x) (x).begin(), (x).end() + int main () { ios_base::sync_with_stdio(false); cin.tie(NULL); int n, m, k; cin >> n >> m >> k; - vector dsz(n); - for (auto &x : dsz) cin >> x; - vector asz(m); - for (auto &x : asz) cin >> x; set taken; - sort(dsz.begin(), dsz.end()); - sort(asz.begin(), asz.end()); - bool mbigger = m > n; - if (mbigger) { - for (int i = 0; i < m; i++) { + vector v(n); + vector a(m); + for (auto &x : v) cin >> x; + for (auto &x : a) cin >> x; + sort(all(a)); + int ans = 0; + for (int i = 0; i < n; i++) { + auto upper = *upper_bound(all(a), v[i]); + auto lower = *lower_bound(all(a), v[i]); + cerr << upper << " " << lower << "\n"; + if(!taken.count(i) && (upper <= v[i] + k || lower >= v[i] - k)) { + taken.insert(i); + ans++; } } + cout << ans << '\n'; } diff --git a/cses/SortingAndSearching/Apartments/main_input0.txt b/cses/SortingAndSearching/Apartments/main_input0.txt new file mode 100644 index 0000000..c2eddfd --- /dev/null +++ b/cses/SortingAndSearching/Apartments/main_input0.txt @@ -0,0 +1,3 @@ +4 3 5 +60 45 80 60 +30 60 75 diff --git a/cses/SortingAndSearching/Apartments/main_output0.txt b/cses/SortingAndSearching/Apartments/main_output0.txt new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/cses/SortingAndSearching/Apartments/main_output0.txt @@ -0,0 +1 @@ +2 diff --git a/cses/SortingAndSearching/FerrisWheel/main b/cses/SortingAndSearching/FerrisWheel/main new file mode 100755 index 0000000..65b5df9 Binary files /dev/null and b/cses/SortingAndSearching/FerrisWheel/main differ diff --git a/cses/SortingAndSearching/FerrisWheel/main.cpp b/cses/SortingAndSearching/FerrisWheel/main.cpp new file mode 100644 index 0000000..5ad5363 --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main.cpp @@ -0,0 +1,34 @@ +#include + +using namespace std; + +typedef long long ll; +typedef pair ii; +typedef vector vii; +typedef vector vi; + +#define INF 1000000000 + +int main () { + ios_base::sync_with_stdio(false); + cin.tie(NULL); + int n, x; + cin >> n >> x; + vi v(n); + for (auto &y : v) cin >> y; + sort(v.begin(), v.end()); + int ans = 0; + int sum = 0; + // 1 2 + // 1 1 1 1 1 1 + // 2 3 7 9 + // 2 5 12 21 + for (int i = 0; i < n; i++) { + sum += v[i]; + if (sum >= x || v[i] > sum) { + sum = 0; + ans++; + } + } + cout << ans << '\n'; +} diff --git a/cses/SortingAndSearching/FerrisWheel/main_input0.txt b/cses/SortingAndSearching/FerrisWheel/main_input0.txt new file mode 100644 index 0000000..8d443f6 --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_input0.txt @@ -0,0 +1,2 @@ +4 10 +7 2 3 9 diff --git a/cses/SortingAndSearching/FerrisWheel/main_input1.txt b/cses/SortingAndSearching/FerrisWheel/main_input1.txt new file mode 100644 index 0000000..78ee919 --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_input1.txt @@ -0,0 +1 @@ +2 3 5 7 9 \ No newline at end of file diff --git a/cses/SortingAndSearching/FerrisWheel/main_input2.txt b/cses/SortingAndSearching/FerrisWheel/main_input2.txt new file mode 100644 index 0000000..93bab7a --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_input2.txt @@ -0,0 +1,2 @@ +4 10 +2 9 11 8 \ No newline at end of file diff --git a/cses/SortingAndSearching/FerrisWheel/main_input3.txt b/cses/SortingAndSearching/FerrisWheel/main_input3.txt new file mode 100644 index 0000000..58a1b3c --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_input3.txt @@ -0,0 +1,2 @@ +6 2 +1 1 1 1 1 1 diff --git a/cses/SortingAndSearching/FerrisWheel/main_output0.txt b/cses/SortingAndSearching/FerrisWheel/main_output0.txt new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_output0.txt @@ -0,0 +1 @@ +3 diff --git a/cses/SortingAndSearching/FerrisWheel/main_output1.txt b/cses/SortingAndSearching/FerrisWheel/main_output1.txt new file mode 100644 index 0000000..e440e5c --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_output1.txt @@ -0,0 +1 @@ +3 \ No newline at end of file diff --git a/cses/SortingAndSearching/FerrisWheel/main_output2.txt b/cses/SortingAndSearching/FerrisWheel/main_output2.txt new file mode 100644 index 0000000..e440e5c --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_output2.txt @@ -0,0 +1 @@ +3 \ No newline at end of file diff --git a/cses/SortingAndSearching/FerrisWheel/main_output3.txt b/cses/SortingAndSearching/FerrisWheel/main_output3.txt new file mode 100644 index 0000000..e440e5c --- /dev/null +++ b/cses/SortingAndSearching/FerrisWheel/main_output3.txt @@ -0,0 +1 @@ +3 \ No newline at end of file -- cgit v1.2.3