From 2cd13bb9252bc3b3b3bed79fe4ad031535fea7f4 Mon Sep 17 00:00:00 2001 From: Manuel Pineda Date: Fri, 17 Feb 2023 11:37:32 +0100 Subject: [PATCH] Add pending CF problems --- .../.vscode/settings.json | 7 ++ .../Codeforces Round #748 (Div. 3)/A.cc | 24 +++++ .../Codeforces Round #748 (Div. 3)/B.cc | 35 +++++++ .../Codeforces Round #748 (Div. 3)/C.cc | 29 ++++++ .../Codeforces Round #748 (Div. 3)/D.cc | 30 ++++++ .../Codeforces Round #748 (Div. 3)/D2.cc | 61 ++++++++++++ .../Codeforces Round #748 (Div. 3)/E.cc | 91 ++++++++++++++++++ .../Codeforces Round #748 (Div. 3)/F.cc | 79 +++++++++++++++ .../Codeforces Round #748 (Div. 3)/sol | Bin 0 -> 26024 bytes 9 files changed, 356 insertions(+) create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/.vscode/settings.json create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/A.cc create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/B.cc create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/C.cc create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/D.cc create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/D2.cc create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/E.cc create mode 100644 solved/Codeforces/Codeforces Round #748 (Div. 3)/F.cc create mode 100755 solved/Codeforces/Codeforces Round #748 (Div. 3)/sol diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/.vscode/settings.json b/solved/Codeforces/Codeforces Round #748 (Div. 3)/.vscode/settings.json new file mode 100644 index 00000000..959c2d55 --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/.vscode/settings.json @@ -0,0 +1,7 @@ +{ + "files.associations": { + "iostream": "cpp", + "numeric": "cpp", + "*.tcc": "cpp" + } +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/A.cc b/solved/Codeforces/Codeforces Round #748 (Div. 3)/A.cc new file mode 100644 index 00000000..2add11f2 --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/A.cc @@ -0,0 +1,24 @@ +#include + +using namespace std; + +int main() { + int cases; + cin >> cases; + for (int i = 0; i < cases; i++) { + int a, b, c; + cin >> a >> b >> c; + int mmax = max(max(a, b), c); + int num_winners = 0; + if (a == mmax) num_winners++; + if (b == mmax) num_winners++; + if (c == mmax) num_winners++; + auto best = [&](int x) -> int { + if (x == mmax) return (num_winners == 1) ? 0 : 1; + int left = mmax - x; + return left + 1; + }; + cout << best(a) << " " << best(b) << " " << best(c) << endl; + } + return 0; +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/B.cc b/solved/Codeforces/Codeforces Round #748 (Div. 3)/B.cc new file mode 100644 index 00000000..e27ac597 --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/B.cc @@ -0,0 +1,35 @@ +#include + +using namespace std; + +int to_target(const string& input, const string& ending) { + int cost = 0; + int j = 1; + for (int i = input.size() - 1; i >= 0; i--) { + if (input[i] == ending[j]) + j--; + else + cost++; + + if (j == -1) return cost; + } + + return 100; +} + +int main() { + int t; + cin >> t; + while (t--) { + string n; + cin >> n; + int best = 100; + best = min(best, to_target(n, "00")); + best = min(best, to_target(n, "25")); + best = min(best, to_target(n, "50")); + best = min(best, to_target(n, "75")); + assert(best != 100); + cout << best << endl; + } + return 0; +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/C.cc b/solved/Codeforces/Codeforces Round #748 (Div. 3)/C.cc new file mode 100644 index 00000000..9cbdcd85 --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/C.cc @@ -0,0 +1,29 @@ +#include + +using namespace std; + +int main() { + int t; + cin >> t; + while (t--) { + int n, k; + cin >> n >> k; + vector dist(k); + for (auto &d : dist) { + int tmp; + cin >> tmp; + d = (n - tmp); + } + sort(dist.begin(), dist.end()); + long long total = 0; + int last = 0; + for (int i = 0; i < k; i++) { + total += dist[i]; + if (total < n) { + last = i + 1; + } + } + cout << last << endl; + } + return 0; +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/D.cc b/solved/Codeforces/Codeforces Round #748 (Div. 3)/D.cc new file mode 100644 index 00000000..e4b043d6 --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/D.cc @@ -0,0 +1,30 @@ +#include + +using namespace std; + +bool all_equal(const vector &a) { + for (auto i : a) + if (i != a[0]) return false; + return true; +} + +int main() { + int t; + cin >> t; + while (t--) { + int n; + cin >> n; + vector a(n); + for (auto &i : a) cin >> i; + int mmin = *min_element(a.begin(), a.end()); + if (all_equal(a)) { + cout << -1 << endl; + continue; + } + for (auto &i : a) i -= mmin; + int gcd = 0; + for (auto i : a) gcd = __gcd(gcd, i); + cout << gcd << endl; + } + return 0; +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/D2.cc b/solved/Codeforces/Codeforces Round #748 (Div. 3)/D2.cc new file mode 100644 index 00000000..cf262fcb --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/D2.cc @@ -0,0 +1,61 @@ +#include + +using namespace std; + +const int inf = 2000000; + +int num_equal(const vector &a, int target) { + int total = 0; + for (auto i : a) + if (i == target) total++; + return total; +} + +set divisors(int n) { + set divs; + for (int d = 1; d * d <= n; d++) { + if ((n % d) == 0) { + divs.insert(d); + divs.insert(n / d); + } + } + return divs; +} + +void solve() { + int n; + cin >> n; + vector a(n); + for (auto &i : a) cin >> i; + + int best = -1; + for (auto start : a) { + int same = num_equal(a, start); + if (same >= (n / 2)) { + cout << -1 << endl; + return; + } + map freq_divs; + for (auto i : a) { + if (i < start) continue; + set divs = divisors((i - start)); + for (auto d : divs) freq_divs[d]++; + } + + for (auto [d, f] : freq_divs) { + if (f >= (n / 2) - same) { + best = max(best, d); + } + } + } + cout << best << endl; +} + +int main() { + int t; + cin >> t; + while (t--) { + solve(); + } + return 0; +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/E.cc b/solved/Codeforces/Codeforces Round #748 (Div. 3)/E.cc new file mode 100644 index 00000000..ba69a902 --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/E.cc @@ -0,0 +1,91 @@ +#include + +using namespace std; + +const int INF = 1000000; + +struct Node { + void AddTo(Node *to) { + adj.push_back(to); + num_edges++; + } + + vector UnprocessedNeighbors() { + vector ans; + for (auto to : adj) { + if (!to->queued) ans.push_back(to); + } + return ans; + } + + int id; + int timestamp; + bool queued; + int num_edges; + vector adj; +}; + +struct Graph { + Graph(int num_nodes) { + for (int i = 0; i < num_nodes; i++) { + nodes.push_back( + Node{.id = i, .timestamp = 1, .queued = false, .num_edges = 0}); + } + } + + void AddEdge(int a, int b) { + nodes[a].AddTo(&nodes[b]); + nodes[b].AddTo(&nodes[a]); + } + + void MarkLeaves() { + for (auto &node : nodes) { + if (node.num_edges == 1) { + unprocessed_leaves.push_back(&node); + node.queued = true; + } + } + } + + vector nodes; + deque unprocessed_leaves; +}; + +void solve() { + int n, k; + cin >> n >> k; + Graph g(n); + for (int i = 0; i < (n - 1); i++) { + int a, b; + cin >> a >> b; + g.AddEdge(a - 1, b - 1); + } + g.MarkLeaves(); + while (g.unprocessed_leaves.size() > 0) { + Node *leave = g.unprocessed_leaves.front(); + g.unprocessed_leaves.pop_front(); + for (auto *to : leave->UnprocessedNeighbors()) { + to->timestamp = max(to->timestamp, leave->timestamp + 1); + to->num_edges--; + if (to->num_edges == 1) { + g.unprocessed_leaves.push_back(to); + to->queued = true; + } + } + leave->queued = true; + } + int ans = 0; + for (auto &node : g.nodes) { + if (node.timestamp > k) ans++; + } + cout << ans << endl; +} + +int main() { + int tc; + cin >> tc; + while (tc--) { + solve(); + } + return 0; +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/F.cc b/solved/Codeforces/Codeforces Round #748 (Div. 3)/F.cc new file mode 100644 index 00000000..16909ce0 --- /dev/null +++ b/solved/Codeforces/Codeforces Round #748 (Div. 3)/F.cc @@ -0,0 +1,79 @@ +#include + +using namespace std; + +const int inf = 1000; + +void solve() { + int n, A, B; + cin >> n >> A >> B; + string number; + cin >> number; + vector digits(n); + for (int i = 0; i < n; i++) { + digits[i] = number[i] - '0'; + } + int dp[n + 1][n + 1][A][B]; + for (int i = 0; i < A; i++) { + for (int j = 0; j < B; j++) { + dp[n][n][i][j] = inf; + dp[n][0][i][j] = inf; + } + } + for (int reds = 1; reds < n; reds++) { + int blacks = n - reds; + for (int i = 0; i < A; i++) { + for (int j = 0; j < B; j++) { + dp[n][reds][i][j] = inf; + } + } + dp[n][reds][0][0] = abs(reds - blacks); + } + + for (int i = n - 1; i >= 0; i--) { + for (int reds = 0; reds < n; reds++) { + for (int modA = 0; modA < A; modA++) { + for (int modB = 0; modB < B; modB++) { + int opt1 = dp[i + 1][reds + 1][((modA * 10) + digits[i]) % A][modB]; + int opt2 = dp[i + 1][reds][modA][((modB * 10) + digits[i]) % B]; + dp[i][reds][modA][modB] = min(opt1, opt2); + } + } + } + } + + string ans; + int best = dp[0][0][0][0]; + if (best == inf) { + cout << -1 << endl; + return; + } + + int reds = 0; + int modA = 0; + int modB = 0; + for (int i = 0; i < n; i++) { + int opt1 = dp[i + 1][reds + 1][((modA * 10) + digits[i]) % A][modB]; + int opt2 = dp[i + 1][reds][modA][((modB * 10) + digits[i]) % B]; + if (opt1 == best) { + ans.push_back('R'); + reds++; + modA = ((modA * 10) + digits[i]) % A; + } else { + assert(opt2 == best); + ans.push_back('B'); + modB = ((modB * 10) + digits[i]) % B; + } + } + + cout << ans << endl; +} + +int main() { + int tc; + cin >> tc; + while (tc--) { + solve(); + } + return 0; +} \ No newline at end of file diff --git a/solved/Codeforces/Codeforces Round #748 (Div. 3)/sol b/solved/Codeforces/Codeforces Round #748 (Div. 3)/sol new file mode 100755 index 0000000000000000000000000000000000000000..c21facc6d0048ab6deec1d13a695a905734e992e GIT binary patch literal 26024 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 oSM8$fEA2auRT0^mlF*614xtSWGDUACYZq$^ZZW literal 0 HcmV?d00001