补题链接:Here

1511A. Review Site

题意:\(n\) 个影评人,\(a_i\) 有三种类型,如下

  • \(a_i = 1\) ,则表示支持
  • \(a_i = 0\) ,则表示不支持
  • \(a_i = 3\) ,则表示无所谓

现在求最大的支持数。

思路:把 \(a_i = 1,3\) 的累加即可

1511B. GCD Length

给定位数 \(a,b\) 和 \(gcd(a,b) = c\)

求出 \(x,y\)

思路:保持最高位基本一致为 \(1\) ,接下来取 \(0\) 这样一定可以得到 gcd(x,y) = c

比赛的时候的猜想,现在证明不出来。。。

void solve() {
int a, b, c;
cin >> a >> b >> c;
for (int i = 0; i <= a - c; ++i) cout << 1;
for (int i = 1; i < c; ++i) cout << 0;
cout << " 1";
for (int i = 1; i < b; ++i) cout << 0;
cout << "\n";
}

1511C. Yet Another Card Deck

题意:给定 \(n\) 张卡牌和 \(q\) 次操作,每次操作要执行输出下标(从1开始)、把该卡片放置最前面

由于卡牌种类仅 \(50\) 种,所以我可以枚举和变化下标

详细见代码

void solve() {
int n, q;
cin >> n >> q;
vector<int> a(n), idx(51);
for (int &x : a) cin >> x;
for (int i = n - 1; i >= 0; --i) idx[a[i]] = i;
for (int i = 0, t; i < q; ++i) {
cin >> t;
cout << idx[t] + 1 << " ";
for (int j = 1; j <= 50; ++j)
if (j != t && idx[j] < idx[t]) idx[j]++; // 使原本在此卡牌之前的牌往后移
idx[t] = 0;
}
}

另外看了下其他dalao的代码想起可以用树状数组做

1511D. Min Cost String

由于要满足 \(k\) 次 cost,只要贪心拼接即可

void solve() {
int n, k;
cin >> n >> k;
string s;
for (int i = 0; i < k; i++) {
s += 'a' + i;
for (int j = i + 1; j < k; j++) {
s += 'a' + i;
s += 'a' + j;
}
}
// assert(s.size() == k * k);
for (int i = 0; i < n; i += 1) cout << s[i % s.size()];
}

1511E. Colorings and Dominoes

没怎么懂这么题,先贴一下学长的代码

void solve() {
int n, m;
cin >> n >> m;
vector<string> vs(n);
for (int i = 0; i < n; ++i) cin >> vs[i];
int k = n * m;
vector<ll> pw(k + 1), ans(k + 1), pv(k + 1);
for (int i = 0; i <= k; ++i) pw[i] = i ? pw[i - 1] * 2 % mod : 1;
for (int i = 0; i <= k; ++i) pv[i] = i ? pv[i - 1] * (mod + 1) / 2 % mod : 1;
ll sum = 0;
for (int i = 1; i <= k; ++i) {
if (i >= 3 and i % 2) sum = (sum + pv[i]) % mod;
ans[i] = (ans[i - 1] * 2 + pw[i] * sum + (i % 2 == 0)) % mod;
//cout << i << " " << ans[i] << "\n";
}
int w = 0;
for (auto s : vs)
for (char c : s) w += c == 'o';
ll res = 0;
for (int i = 0; i < n; ++i) {
int p = 0;
for (int j = 0; j <= m; ++j)
if (j < m and vs[i][j] == 'o') p++;
else {
res = (res + ans[p] * pw[w - p]) % mod;
p = 0;
}
}
for (int i = 0; i < m; i++) {
int p = 0;
for (int j = 0; j <= n; j++)
if (j < n and vs[j][i] == 'o') p++;
else {
res = (res + ans[p] * pw[w - p]) % mod;
p = 0;
}
}
cout << res;
}

Educational Codeforces Round 107 (Rated for Div. 2) 个人题解(A~D)的更多相关文章

  1. Educational Codeforces Round 48 (Rated for Div. 2) CD题解

    Educational Codeforces Round 48 (Rated for Div. 2) C. Vasya And The Mushrooms 题目链接:https://codeforce ...

  2. Educational Codeforces Round 59 (Rated for Div. 2) DE题解

    Educational Codeforces Round 59 (Rated for Div. 2) D. Compression 题目链接:https://codeforces.com/contes ...

  3. Educational Codeforces Round 57 (Rated for Div. 2) ABCDEF题解

    题目总链接:https://codeforces.com/contest/1096 A. Find Divisible 题意: 给出l,r,在[l,r]里面找两个数x,y,使得y%x==0,保证有解. ...

  4. Educational Codeforces Round 80 (Rated for Div. 2)部分题解

    A. Deadline 题目链接 题目大意 给你\(n,d\)两个数,问是否存在\(x\)使得\(x+\frac{d}{x+1}\leq n\),其中\(\frac{d}{x+1}\)向上取整. 解题 ...

  5. Educational Codeforces Round 129 (Rated for Div. 2) A-D

    Educational Codeforces Round 129 (Rated for Div. 2) A-D A 题目 https://codeforces.com/contest/1681/pro ...

  6. Educational Codeforces Round 60 (Rated for Div. 2) - C. Magic Ship

    Problem   Educational Codeforces Round 60 (Rated for Div. 2) - C. Magic Ship Time Limit: 2000 mSec P ...

  7. Educational Codeforces Round 60 (Rated for Div. 2) - D. Magic Gems(动态规划+矩阵快速幂)

    Problem   Educational Codeforces Round 60 (Rated for Div. 2) - D. Magic Gems Time Limit: 3000 mSec P ...

  8. Educational Codeforces Round 43 (Rated for Div. 2)

    Educational Codeforces Round 43 (Rated for Div. 2) https://codeforces.com/contest/976 A #include< ...

  9. Educational Codeforces Round 35 (Rated for Div. 2)

    Educational Codeforces Round 35 (Rated for Div. 2) https://codeforces.com/contest/911 A 模拟 #include& ...

  10. Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings

    Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings 题目连接: http://cod ...

随机推荐

  1. Guava Preconditions类的各种用法

    公众号「架构成长指南」,专注于生产实践.云原生.分布式系统.大数据技术分享. Guava Preconditions类 提供静态方法列表,用于检查是否使用有效参数值调用方法或构造函数.如果前提条件失败 ...

  2. [ABC261A] Intersection

    Problem Statement We have a number line. Takahashi painted some parts of this line, as follows: Firs ...

  3. A Novel Cascade Binary Tagging Framework for Relational Triple Extraction(论文研读与复现)

    A Novel Cascade Binary Tagging Framework for Relational Triple Extraction Zhepei Wei,Jianlin Su, Yue ...

  4. Celery 定义和调用异步任务Task

    https://docs.celeryq.dev/en/stable/userguide/tasks.html 使用app.task装饰器定义 需要通过导入celery app,然后使用@app.ta ...

  5. 【内核】kernel 热升级-1:kexec 机制

    内核热升级是指,预先准备好需要升级的内核镜像文件,在秒级时间内,完成内核切换,追求用户服务进程无感知. 欧拉操作系统提供了一套比较成熟的解决方案,该解决方案提供了用户态程序和内核态程序两部分: kex ...

  6. 华企盾DSC申请解密在键盘中勾选会自动取消

    解决方法:打开系统偏好设置-键盘--服务,由于服务中超出了系统支持的最大菜单数,删除两个即可

  7. vulnhub - lazySysAdmin - writeup

    信息收集 可以看到目标开放了常见的22, 80, 139, 445, 3306这个6667的服务少见. root@kali tmp/lazySysAdmin » arp-scan -I eth1 -l ...

  8. JavaFX打包exe+Wind+Mac+Linux多平台分发等等

    JavaFX打包exe+Wind+Mac+Linux多平台分发等等 由于此教程相对复杂,适合对java有一定掌握的同学操作,于是我又写了一篇用idea简单打包exe的教程,文章地址:https://b ...

  9. SVN工具基础知识

    SVN工具基础知识 1.简介 1.全称Subversion,是一个开放源代码的版本控制系统,Subversion 在 2000 年由 CollabNet Inc 开发,现 在发展成为 Apache 软 ...

  10. MySQL基础篇:第九章_详解流程控制结构

    流程控制结构 系统变量 一.全局变量 作用域:针对于所有会话(连接)有效,但不能跨重启 查看所有全局变量 SHOW GLOBAL VARIABLES; 查看满足条件的部分系统变量 SHOW GLOBA ...