aboutsummaryrefslogtreecommitdiff
path: root/contests/Round900
diff options
context:
space:
mode:
Diffstat (limited to 'contests/Round900')
-rwxr-xr-xcontests/Round900/D/main.cpp132
-rwxr-xr-xcontests/Round900/E/main.cpp177
-rw-r--r--contests/Round900/E/main_input0.txt21
-rw-r--r--contests/Round900/E/main_output0.txt3
-rwxr-xr-xcontests/Round900/F/main.cpp129
5 files changed, 0 insertions, 462 deletions
diff --git a/contests/Round900/D/main.cpp b/contests/Round900/D/main.cpp
deleted file mode 100755
index 40b2ad1..0000000
--- a/contests/Round900/D/main.cpp
+++ /dev/null
@@ -1,132 +0,0 @@
-#include <bits/stdc++.h>
-using namespace std;
-
-using ll = long long;
-using pii = pair<int, int>;
-using vpi = vector<pii>;
-using vi = vector<int>;
-using vll = vector<long long>;
-using mpii = map<int, int>;
-using mpll = map<ll, ll>;
-using db = long double;
-
-#define pb push_back
-#define all(x) (x).begin(), (x).end()
-#define rall(x) (x).rbegin(), (x).rend()
-#define lb lower_bound
-#define ub upper_bound
-#define make_unique(x) \
- sort(all((x))); \
- (x).resize(unique(all((x))) - (x).begin())
-#define ceil(a, b) ((a) + (b)-1) / (b)
-
-const int MOD = (int)1e9 + 7;
-const db PI = acos((db)-1);
-const int dx[4]{1, 0, -1, 0};
-const int dy[4]{0, 1, 0, -1};
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const pair<K, V> &p);
-template <typename T> ostream &operator<<(ostream &os, const vector<T> &vec);
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const map<K, V> &m);
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const unordered_map<K, V> &m);
-template <typename T> ostream &operator<<(ostream &os, const set<T> &s);
-template <typename T>
-ostream &operator<<(ostream &os, const unordered_set<T> &s);
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const pair<K, V> &p) {
- os << "(" << p.first << ", " << p.second << ")";
- return os;
-}
-
-template <typename T> ostream &operator<<(ostream &os, const vector<T> &vec) {
- os << "{";
- for (size_t i = 0; i < vec.size(); ++i) {
- if (i > 0)
- os << ", ";
- os << vec[i];
- }
- os << "}";
- return os;
-}
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const map<K, V> &m) {
- os << "{";
- for (const auto &p : m) {
- os << p.first << ": " << p.second << ", ";
- }
- os << "}";
- return os;
-}
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const unordered_map<K, V> &m) {
- os << "{";
- for (const auto &p : m) {
- os << p.first << ": " << p.second << ", ";
- }
- os << "}";
- return os;
-}
-
-template <typename T> ostream &operator<<(ostream &os, const set<T> &s) {
- int i = 0;
- os << "{";
- for (const auto &e : s) {
- if (i > 0)
- os << ", ";
- os << e;
- i++;
- }
- os << "}";
- return os;
-}
-
-template <typename T>
-ostream &operator<<(ostream &os, const unordered_set<T> &s) {
- int i = 0;
- os << "{";
- for (const auto &e : s) {
- if (i > 0)
- os << ", ";
- os << e;
- i++;
- }
- os << "}";
- return os;
-}
-
-void dbg() { cerr << "\n"; }
-
-template <typename T, typename... TS> void dbg(T val, TS... vals) {
- cerr << val << " ";
- dbg(vals...);
-}
-
-/* stuff you should look for:
- ---------------------------
- * special cases (n=1?)
- * int overflow, array bounds
- * do smth instead of nothing and stay organized
- * WRITE STUFF DOWN
- * DON'T GET STUCK ON ONE APPROACH
- */
-
-void solve() {
- int n;
- cin >> n;
-}
-
-int main() {
- ios_base::sync_with_stdio(false);
- cin.tie(NULL);
- int tt;
- cin >> tt;
- while (tt--) {
- solve();
- }
-}
diff --git a/contests/Round900/E/main.cpp b/contests/Round900/E/main.cpp
deleted file mode 100755
index b91130f..0000000
--- a/contests/Round900/E/main.cpp
+++ /dev/null
@@ -1,177 +0,0 @@
-#include <bits/stdc++.h>
-#include <climits>
-using namespace std;
-
-using ll = long long;
-using pii = pair<int, int>;
-using vpi = vector<pii>;
-using vi = vector<int>;
-using vll = vector<long long>;
-using mpii = map<int, int>;
-using mpll = map<ll, ll>;
-using db = long double;
-
-#define pb push_back
-#define all(x) (x).begin(), (x).end()
-#define rall(x) (x).rbegin(), (x).rend()
-#define lb lower_bound
-#define ub upper_bound
-#define make_unique(x) \
- sort(all((x))); \
- (x).resize(unique(all((x))) - (x).begin())
-#define ceil(a, b) ((a) + (b)-1) / (b)
-
-const int MOD = (int)1e9 + 7;
-const db PI = acos((db)-1);
-const int dx[4]{1, 0, -1, 0};
-const int dy[4]{0, 1, 0, -1};
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const pair<K, V> &p);
-template <typename T> ostream &operator<<(ostream &os, const vector<T> &vec);
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const map<K, V> &m);
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const unordered_map<K, V> &m);
-template <typename T> ostream &operator<<(ostream &os, const set<T> &s);
-template <typename T>
-ostream &operator<<(ostream &os, const unordered_set<T> &s);
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const pair<K, V> &p) {
- os << "(" << p.first << ", " << p.second << ")";
- return os;
-}
-
-template <typename T> ostream &operator<<(ostream &os, const vector<T> &vec) {
- os << "{";
- for (size_t i = 0; i < vec.size(); ++i) {
- if (i > 0)
- os << ", ";
- os << vec[i];
- }
- os << "}\n";
- return os;
-}
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const map<K, V> &m) {
- os << "{";
- for (const auto &p : m) {
- os << p.first << ": " << p.second << ", ";
- }
- os << "}";
- return os;
-}
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const unordered_map<K, V> &m) {
- os << "{";
- for (const auto &p : m) {
- os << p.first << ": " << p.second << ", ";
- }
- os << "}";
- return os;
-}
-
-template <typename T> ostream &operator<<(ostream &os, const set<T> &s) {
- int i = 0;
- os << "{";
- for (const auto &e : s) {
- if (i > 0)
- os << ", ";
- os << e;
- i++;
- }
- os << "}";
- return os;
-}
-
-template <typename T>
-ostream &operator<<(ostream &os, const unordered_set<T> &s) {
- int i = 0;
- os << "{";
- for (const auto &e : s) {
- if (i > 0)
- os << ", ";
- os << e;
- i++;
- }
- os << "}";
- return os;
-}
-
-void dbg() { cerr << "\n"; }
-
-template <typename T, typename... TS> void dbg(T val, TS... vals) {
- cerr << val << " ";
- dbg(vals...);
-}
-
-/* stuff you should look for:
- ---------------------------
- * special cases (n=1?)
- * int overflow, array bounds
- * do smth instead of nothing and stay organized
- * WRITE STUFF DOWN
- * DON'T GET STUCK ON ONE APPROACH
- */
-
-const int bits = 32;
-
-int get_number(int l, int r, vector<vi> &mp, vi &v) {
- int ans = 0;
- if (l == r)
- return v[l];
- for (int i = 0; i < bits; i++) {
- if (mp[r][i] - mp[l][i] == r - l) {
- ans |= (1 << i);
- }
- }
- return ans;
-}
-
-void solve() {
- int n;
- cin >> n;
- vi v(n);
- for (auto &x : v) {
- cin >> x;
- }
- vector<vi> mp(n + 1, vi(bits, 0));
- for (int i = 0; i < n; i++) {
- for (int j = 0; j < bits; j++) {
- mp[i + 1][j] += (((1 << j) & v[i]) > 0) + mp[i][j];
- }
- }
- int q;
- cin >> q;
- for (int i = 0; i < q; i++) {
- int l, k;
- cin >> l >> k;
- ll lo = l - 1, hi = n;
- while (hi - lo > 1) {
- ll mid = (lo + hi) / 2;
- if (get_number(l - 1, mid + 1, mp, v) < k) {
- hi = mid;
- } else {
- lo = mid;
- }
- }
- if (get_number(l - 1, hi - 1, mp, v) < k) {
- cout << -1 << " \n"[i == q - 1];
- } else {
- cout << hi << " \n"[i == q - 1];
- }
- }
-}
-
-int main() {
- ios_base::sync_with_stdio(false);
- cin.tie(NULL);
- int tt;
- cin >> tt;
- while (tt--) {
- solve();
- }
-}
diff --git a/contests/Round900/E/main_input0.txt b/contests/Round900/E/main_input0.txt
deleted file mode 100644
index 183bc78..0000000
--- a/contests/Round900/E/main_input0.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-3
-5
-15 14 17 42 34
-3
-1 7
-2 15
-4 5
-5
-7 5 3 1 7
-4
-1 7
-5 7
-2 3
-2 2
-7
-19 20 15 12 21 7 11
-4
-1 15
-4 4
-7 12
-5 7
diff --git a/contests/Round900/E/main_output0.txt b/contests/Round900/E/main_output0.txt
deleted file mode 100644
index 664986d..0000000
--- a/contests/Round900/E/main_output0.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-2 -1 5
-1 5 2 2
-2 6 -1 5
diff --git a/contests/Round900/F/main.cpp b/contests/Round900/F/main.cpp
deleted file mode 100755
index 82c5879..0000000
--- a/contests/Round900/F/main.cpp
+++ /dev/null
@@ -1,129 +0,0 @@
-#include <bits/stdc++.h>
-using namespace std;
-
-using ll = long long;
-using pii = pair<int, int>;
-using vpi = vector<pii>;
-using vi = vector<int>;
-using vll = vector<long long>;
-using mpii = map<int, int>;
-using mpll = map<ll, ll>;
-using db = long double;
-
-#define pb push_back
-#define all(x) (x).begin(), (x).end()
-#define rall(x) (x).rbegin(), (x).rend()
-#define lb lower_bound
-#define ub upper_bound
-#define make_unique(x) \
- sort(all((x))); \
- (x).resize(unique(all((x))) - (x).begin())
-#define ceil(a, b) ((a) + (b)-1) / (b)
-
-const int MOD = (int)1e9 + 7;
-const db PI = acos((db)-1);
-const int dx[4]{1, 0, -1, 0};
-const int dy[4]{0, 1, 0, -1};
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const pair<K, V> &p);
-template <typename T> ostream &operator<<(ostream &os, const vector<T> &vec);
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const map<K, V> &m);
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const unordered_map<K, V> &m);
-template <typename T> ostream &operator<<(ostream &os, const set<T> &s);
-template <typename T>
-ostream &operator<<(ostream &os, const unordered_set<T> &s);
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const pair<K, V> &p) {
- os << "(" << p.first << ", " << p.second << ")";
- return os;
-}
-
-template <typename T> ostream &operator<<(ostream &os, const vector<T> &vec) {
- os << "{";
- for (size_t i = 0; i < vec.size(); ++i) {
- if (i > 0)
- os << ", ";
- os << vec[i];
- }
- os << "}";
- return os;
-}
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const map<K, V> &m) {
- os << "{";
- for (const auto &p : m) {
- os << p.first << ": " << p.second << ", ";
- }
- os << "}";
- return os;
-}
-
-template <typename K, typename V>
-ostream &operator<<(ostream &os, const unordered_map<K, V> &m) {
- os << "{";
- for (const auto &p : m) {
- os << p.first << ": " << p.second << ", ";
- }
- os << "}";
- return os;
-}
-
-template <typename T> ostream &operator<<(ostream &os, const set<T> &s) {
- int i = 0;
- os << "{";
- for (const auto &e : s) {
- if (i > 0)
- os << ", ";
- os << e;
- i++;
- }
- os << "}";
- return os;
-}
-
-template <typename T>
-ostream &operator<<(ostream &os, const unordered_set<T> &s) {
- int i = 0;
- os << "{";
- for (const auto &e : s) {
- if (i > 0)
- os << ", ";
- os << e;
- i++;
- }
- os << "}";
- return os;
-}
-
-void dbg() { cerr << "\n"; }
-
-template <typename T, typename... TS> void dbg(T val, TS... vals) {
- cerr << val << " ";
- dbg(vals...);
-}
-
-/* stuff you should look for:
- ---------------------------
- * special cases (n=1?)
- * int overflow, array bounds
- * do smth instead of nothing and stay organized
- * WRITE STUFF DOWN
- * DON'T GET STUCK ON ONE APPROACH
- */
-
-void solve() { <()> }
-
-int main() {
- ios_base::sync_with_stdio(false);
- cin.tie(NULL);
- int tt;
- cin >> tt;
- while (tt--) {
- solve();
- }
-}