A. Lame King
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define pb push_back
const int inf = 0x3f3f3f3f;
const long long llinf = (long long)0x3f3f3f3f3f3f3f3f;
const long long MOD = (long long)1e9 + 7LL;
const size_t N = (size_t)1e6 + 5;
ll T, n;
#define IO \
ios::sync_with_stdio(false); \
std::cin.tie(0); \
std::cout.tie(0)
#define debug(a) std::cerr << "\033[34m" << #a << ':' << a << "\033[0m" << std::endl
#define debugPair(label, val) std::cerr << "\033[34m" << #label << ':' << label << " " << #val << ':' << val << "\033[0m" << std::endl
template <typename T>
void debugPkg(const T& t) {
std::cerr << "\033[34m" << t << "\033[0m" << std::endl;
}
template <typename T, typename... Args>
void debugPkg(const T& t, const Args&... pkg) {
std::cerr << "\033[34m" << t << " ";
debugPkg(pkg...);
}
#define testOut(a) std::cerr << "\033[32m" << a << "\033[0m" << std::endl
template <typename _Ty1, typename _Ty2>
ostream& operator<<(ostream& out, const pair<_Ty1, _Ty2>& pr) {
out << "[" << pr.first << ", " << pr.second << "]";
return out;
}
void solve() {
int x, y;
cin >> x >> y;
x = abs(x);
y = abs(y);
if (x == y) {
cout << 2 * x << endl;
return;
}
int sum = 0;
sum += min(x, y) * 2 + 1;
int t = (max(x, y) - min(x, y) - 1) * 2;
if (t <= 0) {
cout << sum << endl;
return;
}
sum += t;
cout << sum << endl;
}
int main() {
IO;
T = 1;
cin >> T;
while (T--) {
solve();
}
return 0;
}
B. Vaccination
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define pb push_back
const int inf = 0x3f3f3f3f;
const long long llinf = (long long)0x3f3f3f3f3f3f3f3f;
const long long MOD = (long long)1e9 + 7LL;
const size_t N = (size_t)1e6 + 5;
ll T, n;
#define IO \
ios::sync_with_stdio(false); \
std::cin.tie(0); \
std::cout.tie(0)
#define debug(a) std::cerr << "\033[34m" << #a << ':' << a << "\033[0m" << std::endl
#define debugPair(label, val) std::cerr << "\033[34m" << #label << ':' << label << " " << #val << ':' << val << "\033[0m" << std::endl
template <typename T>
void debugPkg(const T& t) {
std::cerr << "\033[34m" << t << "\033[0m" << std::endl;
}
template <typename T, typename... Args>
void debugPkg(const T& t, const Args&... pkg) {
std::cerr << "\033[34m" << t << " ";
debugPkg(pkg...);
}
#define testOut(a) std::cerr << "\033[32m" << a << "\033[0m" << std::endl
template <typename _Ty1, typename _Ty2>
ostream& operator<<(ostream& out, const pair<_Ty1, _Ty2>& pr) {
out << "[" << pr.first << ", " << pr.second << "]";
return out;
}
void solve() {
int n, k, d, w;
cin >> n >> k >> d >> w;
vector<int> a(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
}
int ans = 0;
for (int i = 0; i < n;) {
ans++;
int j = i;
while (j < n && a[j] - a[i] <= d + w && j - i < k) {
j++;
}
i = j;
}
cout << ans << endl;
}
int main() {
IO;
T = 1;
cin >> T;
while (T--) {
solve();
}
return 0;
}
C. Pull Your Luck
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define pb push_back
const int inf = 0x3f3f3f3f;
const long long llinf = (long long)0x3f3f3f3f3f3f3f3f;
const long long MOD = (long long)1e9 + 7LL;
const size_t N = (size_t)1e6 + 5;
ll T, n;
#define IO \
ios::sync_with_stdio(false); \
std::cin.tie(0); \
std::cout.tie(0)
#define debug(a) std::cerr << "\033[34m" << #a << ':' << a << "\033[0m" << std::endl
#define debugPair(label, val) std::cerr << "\033[34m" << #label << ':' << label << " " << #val << ':' << val << "\033[0m" << std::endl
template <typename T>
void debugPkg(const T& t) {
std::cerr << "\033[34m" << t << "\033[0m" << std::endl;
}
template <typename T, typename... Args>
void debugPkg(const T& t, const Args&... pkg) {
std::cerr << "\033[34m" << t << " ";
debugPkg(pkg...);
}
#define testOut(a) std::cerr << "\033[32m" << a << "\033[0m" << std::endl
template <typename _Ty1, typename _Ty2>
ostream& operator<<(ostream& out, const pair<_Ty1, _Ty2>& pr) {
out << "[" << pr.first << ", " << pr.second << "]";
return out;
}
void solve() {
ll n, x, p;
cin >> n >> x >> p;
for (ll i = 1; i <= min(p, 2 * n); i++) {
if ((x + i * (i + 1) / 2) % n == 0) {
cout << "YES\n";
return;
}
}
cout << "NO\n";
}
int main() {
IO;
T = 1;
cin >> T;
while (T--) {
solve();
}
return 0;
}
D. Accommodation
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define pb push_back
const int inf = 0x3f3f3f3f;
const long long llinf = (long long)0x3f3f3f3f3f3f3f3f;
const long long MOD = (long long)1e9 + 7LL;
const size_t N = (size_t)1e6 + 5;
int T, n, m;
#define IO \
ios::sync_with_stdio(false); \
std::cin.tie(0); \
std::cout.tie(0)
#define debug(a) std::cerr << "\033[34m" << #a << ':' << a << "\033[0m" << std::endl
#define debugPair(label, val) std::cerr << "\033[34m" << #label << ':' << label << " " << #val << ':' << val << "\033[0m" << std::endl
template <typename T>
void debugPkg(const T& t) {
std::cerr << "\033[34m" << t << "\033[0m" << std::endl;
}
template <typename T, typename... Args>
void debugPkg(const T& t, const Args&... pkg) {
std::cerr << "\033[34m" << t << " ";
debugPkg(pkg...);
}
#define testOut(a) std::cerr << "\033[32m" << a << "\033[0m" << std::endl
template <typename _Ty1, typename _Ty2>
ostream& operator<<(ostream& out, const pair<_Ty1, _Ty2>& pr) {
out << "[" << pr.first << ", " << pr.second << "]";
return out;
}
void solve() {
cin >> n >> m;
string s;
int mi = 0, ma = 0;
for (int i = 0; i < n; i++) {
cin >> s;
int num = 0, c = 0;
for (int j = 0; j < m; j++) {
if (s[j] == '1') {
num++;
}
}
for (int j = 1; j < m; j++) {
if (s[j - 1] == '1' && s[j - 1] == s[j]) {
c++;
j++;
}
}
c = min(c, m / 4);
mi += num - c;
c = 0;
for (int j = 1; j < m; j++) {
if (s[j - 1] != '1' || s[j - 1] != s[j]) {
c++;
j++;
}
}
c = min(c, m / 4);
ma += num - (m / 4 - c);
}
cout << mi << " " << ma;
}
int main() {
IO;
T = 1;
while (T--) {
solve();
}
return 0;
}