#include<bits/stdc++.h> usingnamespace std; #define int long long
voidsolve(){ int n, c; cin >> n >> c; int ans = 0; int last = 0; for (int i = 0; i < n; i++) { int v; cin >> v; if (i == 0) { ans++; last = v; continue; } if (v - last >= c) { ans++; last = v; } } cout << ans << "\n"; }
signedmain(){ ios::sync_with_stdio(false); cin.tie(0); int t = 1; // cin >> t; while (t--) { solve(); } return0; }
#include<bits/stdc++.h> usingnamespace std; #define int long long
voidsolve(){ int n; cin >> n; vector<int> a(n), b(n); for (int i = 0; i < n; i++) { cin >> a[i]; } for (int i = 0; i < n - 1; i++) { cin >> b[i]; } sort(a.begin(), a.end()); int l = 0, r = 2e9; int ans = 1e18; while (l < r) { int mid = (l + r) / 2; b[n - 1] = mid; vector<int> c(b.begin(), b.end()); sort(c.begin(), c.end()); bool ok = 1; for (int i = 0; i < n; i++) { if (a[i] > c[i]) { ok = 0; break; } } if (ok) { r = mid; ans = min(ans, mid); } else { l = mid + 1; } } if (ans == 1e18) { ans = -1; } cout << ans << "\n"; }
signedmain(){ ios::sync_with_stdio(false); cin.tie(0); int t = 1; // cin >> t; while (t--) { solve(); } return0; }
#include<bits/stdc++.h> usingnamespace std; #define int long long
voidsolve(){ int n, m; cin >> n >> m; vector<vector<int>> e(n); for (int i = 0; i < m; i++) { int x, y; cin >> x >> y; x--, y--; e[x].push_back(y); } int ans = 1e9; queue<int> q; q.push(0); vector<int> dis(n, -1); dis[0] = 0; while (!q.empty()) { int u = q.front(); q.pop(); for (auto v : e[u]) { if (v == 0) { ans = min(ans, dis[u] + 1); } if (dis[v] == -1) { dis[v] = dis[u] + 1; q.push(v); } } } if (ans == 1e9) { ans = -1; } cout << ans << "\n"; }
signedmain(){ ios::sync_with_stdio(false); cin.tie(0); int t = 1; // cin >> t; while (t--) { solve(); } return0; }
#include<bits/stdc++.h> usingnamespace std; #define int long long
voidsolve(){ int n, k; cin >> n >> k; vector<int> a(n), b(n); for (int i = 0; i < n; i++) { cin >> a[i]; } for (int i = 0; i < n; i++) { cin >> b[i]; } vector<int> c(n); iota(c.begin(), c.end(), 0); sort(c.begin(), c.end(), [&](int i, int j) { return a[i] < a[j]; }); int sum = 0; int ans = 1e18; priority_queue<int> pq; for (auto i : c) { sum += b[i]; pq.push(b[i]); while (pq.size() > k) { sum -= pq.top(); pq.pop(); } if (pq.size() == k) { ans = min(ans, sum * a[i]); } } cout << ans << "\n"; }
signedmain(){ ios::sync_with_stdio(false); cin.tie(0); int t = 1; cin >> t; while (t--) { solve(); } return0; }