Educational Codeforces Round 107 (Rated for Div. 2) 个人题解(A~D)
补题链接: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)的更多相关文章
- Educational Codeforces Round 48 (Rated for Div. 2) CD题解
Educational Codeforces Round 48 (Rated for Div. 2) C. Vasya And The Mushrooms 题目链接:https://codeforce ...
- Educational Codeforces Round 59 (Rated for Div. 2) DE题解
Educational Codeforces Round 59 (Rated for Div. 2) D. Compression 题目链接:https://codeforces.com/contes ...
- 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,保证有解. ...
- Educational Codeforces Round 80 (Rated for Div. 2)部分题解
A. Deadline 题目链接 题目大意 给你\(n,d\)两个数,问是否存在\(x\)使得\(x+\frac{d}{x+1}\leq n\),其中\(\frac{d}{x+1}\)向上取整. 解题 ...
- 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 ...
- 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 ...
- 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 ...
- Educational Codeforces Round 43 (Rated for Div. 2)
Educational Codeforces Round 43 (Rated for Div. 2) https://codeforces.com/contest/976 A #include< ...
- Educational Codeforces Round 35 (Rated for Div. 2)
Educational Codeforces Round 35 (Rated for Div. 2) https://codeforces.com/contest/911 A 模拟 #include& ...
- 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 ...
随机推荐
- 用友U8与MES系统API接口对接案例分析
企业数字化转型:轻易云数据集成平台助力 U8 ERP+MES 系统集成 为什么选择数字化转型? 领导层对企业资源规划(ERP)的深刻理解促使了数字化转型的启动. 采用精确的"N+5" ...
- 企业ERP和泛微OA集成场景分析
轻易云数据集成平台(qeasy.cloud)为企业ERP和泛微OA系统提供了强大的互通解决方案,特别在销售.采购和库存领域的单据审批场景中表现出色.这些场景涉及到多个业务单据的创建和审批,以下是一些具 ...
- 吉特日化MES & HttpClient基础连接已经关闭: 连接被意外关闭
在吉特日化MES调用某公司AGV平台下发任务的时候,使用HttpClient 进行POST请求,出现如下异常: HttpClient基础连接已经关闭: 连接被意外关闭 , 之前已经使用HTTPCli ...
- HDU 4787 GRE Revenge
Now Coach Pang is preparing for the Graduate Record Examinations as George did in 2011. At each day, ...
- Java核心知识体系8:Java如何保证线程安全性
Java核心知识体系1:泛型机制详解 Java核心知识体系2:注解机制详解 Java核心知识体系3:异常机制详解 Java核心知识体系4:AOP原理和切面应用 Java核心知识体系5:反射机制详解 J ...
- 后端程序员必会的前端知识-03:Vue2
三. Vue 2 1. Vue 基础 1) 环境准备 安装脚手架 npm install -g @vue/cli -g 参数表示全局安装,这样在任意目录都可以使用 vue 脚本创建项目 创建项目 vu ...
- ElasticSearch之cat segments API
命令样例如下: curl -X GET "https://localhost:9200/_cat/segments?v=true&pretty" --cacert $ES_ ...
- 基于WebRTC的局域网文件传输
基于WebRTC的局域网文件传输 WebRTC(Web Real-Time Communications)是一项实时通讯技术,允许网络应用或者站点,在不借助中间媒介的情况下,建立浏览器之间点对点P2P ...
- 编写.NET的Dockerfile文件构建镜像
创建一个WebApi项目,并且创建一个Dockerfile空文件,添加以下代码,7.0代表的你项目使用的SDK的版本,构建的时候也需要选择好指定的镜像tag FROM mcr.microsoft.co ...
- zabbix-server 报错记录
数据库磁盘满导至zabbix挂了 登陆zabbix页面提示错误信息,查看系统磁盘: /目录已满,导致mariadb数据库无法正常运行,如果有介质将会一直收取: 解决方法:扩容/目录,达到理想值,重启m ...