Untitled
user_9000366
plain_text
9 months ago
3.8 kB
15
Indexable
/// F
void Mesh_JOO() {
int q;
cin >> q;
map<int, int> mp1, mp2;
while (q--) {
int ty, x;
cin >> ty >> x;
if (ty == 1) {
if (mp1[x])mp2[mp1[x]]--;
mp1[x]++;
mp2[mp1[x]]++;
} else if (ty == 2) {
if (mp1[x]) {
mp2[mp1[x]]--;
mp1[x]--;
mp2[mp1[x]]++;
}
} else {
cout << (mp2[x] ? 1 : 0) << '\n';
}
}
}
////M
void Mesh_JOO() {
int n, k;
cin >> n >> k;
vector<ll> a(k), b(k), res(n + 2, INT_MAX);
for (int i = 0; i < k; ++i) {
cin >> a[i];
}
for (int i = 0; i < k; ++i) {
cin >> b[i];
}
for (int i = 0; i < k; ++i) {
res[a[i]] = b[i];
}
for (int i = 1; i <= n; ++i) {
res[i] = min(res[i], res[i - 1] + 1);
}
for (int i = n - 1; i >= 0; --i) {
res[i] = min(res[i], res[i + 1] + 1);
}
for (int i = 1; i <= n; ++i) {
cout << res[i] << ' ';
}
cout << '\n';
}
/////n
void Mesh_JOO() {
int n;
cin >> n;
vector<ll> a(n);
ll sum{};
for (auto &i: a)cin >> i, sum += i;
if (sum % 3 != 0) {
cout << 0;
return;
}
ll tr = sum / 3;
ll cnt{}, ans{};
ll sum2{};
for (int i = 0; i < n - 1; ++i) {
sum2 += a[i];
if (sum2 == 2 * tr) ans += cnt;
if (sum2 == tr)cnt++;
}
cout<<ans<<'\n';
}
// o
int t;
cin >> t;
while (t--) {
string s;
cin >> s;
ll cur = 0, res = 0;
for (int i = 0; i < s.size(); i++) {
res++;
if (s[i] == '+') {
cur++;
}
else
cur--;
if (cur < 0) {
res += i + 1;
cur = 0;
}
}
cout << res << "\n";
}
///p
void Mesh_JOO() {
int n;
cin >> n;
vector<vector<int>> a(n, vector<int>(2));
ll sum1{}, sum2{};
for (int i = 0; i < n; i++) {
cin >> a[i][0];
sum1 += a[i][0];
}
for (int i = 0; i < n; i++) {
cin >> a[i][1];
}
ll res{INT_MAX};
for (int i = 0; i < n; i++) {
sum1 -= a[i][0];
res = min(res, max(sum1, sum2));
sum2 += a[i][1];
}
cout << res << '\n';
}
///r
void Mesh_JOO() {
int n;
cin >> n;
string s, t;
cin >> s >> t;
for (int i = 0; i < n; ++i) {
if (s[i] != t[i]) {
int j =i+1;
for (; j < n; ++j)
if (s[i] != s[j]) {
break;
}
if (s[j] == s[i] + 1)
swap(s[i], s[j]);
}
}
cout << (s == t ? "YES\n" : "NO\n");
}
///t
const int N = 1e3+10;
void Mesh_JOO() {
ll n, q;
cin >> n >> q;
vector<vector<ll> > pre(N, vector<ll>(N, 0));
for (int i = 0; i < n; ++i) {
ll x, y;
cin >> x >> y;
pre[x][y] += x*y;
}
for (int i = 1; i < N; ++i) {
for (int j = 1; j < N; ++j) {
pre[i][j] += pre[i - 1][j];
}
}
for (int i = 1; i < N; ++i) {
for (int j = 1; j < N; ++j) {
pre[i][j] += pre[i][j - 1];
}
}
while (q--) {
pair<int, int> l, r;
cin >> l.first >> l.second;
cin >> r.first >> r.second;
r.first--, r.second--;
ll ans = pre[r.first][r.second]
+ pre[l.first][l.second]
- pre[l.first][r.second]
- pre[r.first][l.second];
cout << ans << '\n';
}
}
Editor is loading...
Leave a Comment