1461A. String Generation

void solve() {
int n, k;
cin >> n >> k;
for (int i = 1; i <= n; ++i)
cout << (char)(i < k ? 'a' : 'a' + (i - k) % 3);
cout << endl;
}

1461B.Find the Spruce

DP,从下往上推

const int N = 500 + 10;

char s[N][N];
int dp[N][N];
void solve() {
int n, m;
cin >> n >> m;
for (int i = 1; i <= n; ++i)
cin >> s[i] + 1;
int ans = 0;
for (int i = n; i; i -= 1)
for (int j = m; j; j -= 1) {
dp[i][j] = 0;
if (s[i][j] == '*') {
if (i < n and j > 1 and j < m)
dp[i][j] = 1 + min({dp[i + 1][j - 1], dp[i + 1][j],
dp[i + 1][j + 1]});
else
dp[i][j] = 1;
}
ans += dp[i][j];
}
cout << ans << endl;
}

1461C. Random Events

贪心

int a[N];
void solve() {
cout << fixed << setprecision(6);
int n, q;
cin >> n >> q;
for (int i = 1; i <= n; ++i)
cin >> a[i];
int m = n;
while (a[m] == m and m)
m--;
double ans = 1, p;
for (int i = 1, r; i <= q; i += 1) {
cin >> r >> p;
if (r >= m)
ans *= 1 - p;
}
if (!m)
cout << 1.0 << endl;
else
cout << 1 - ans << endl;
}

1461D.Divide and Summarize

贪心先把能找到的都找出来, \(O(nlog^2n)\)

int a[N];
ll sum[N];
void solve() {
cout << fixed << setprecision(6);
int n, m, q;
cin >> n >> m;
for (int i = 1; i <= n; ++i)
cin >> a[i];
sort(a + 1, a + 1 + n);
// 前缀和
for (int i = 1; i <= n; ++i)
sum[i] = sum[i - 1] + a[i];
set<ll> s;
// 用新写法
function<void(int, int)> DFS = [&](int L, int R) {
s.insert(sum[R] - sum[L - 1]);
if (a[L] == a[R])
return;
int M = upper_bound(a + L, a + R + 1, (a[L] + a[R]) / 2) - a;
DFS(L, M - 1),DFS(M, R);
};
DFS(1, n);
for (int i = 1; i <= m; ++i) {
cin >> q;
cout << (s.count(q) ? "Yes\n" : "No\n");
}
}

Codeforces Round #689 (Div. 2, based on Zed Code Competition) 个人题解的更多相关文章

  1. Codeforces Round #689 (Div. 2, based on Zed Code Competition) E. Water Level (贪心好题)

    题意:你在一家公司工作\(t\)天,负责给饮水机灌水,饮水机最初有\(k\)升水,水的范围必须要在\([l,r]\)内,同事每天白天都会喝\(x\)升水,你在每天大清早可以给饮水机灌\(y\)升水,问 ...

  2. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)

    Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) 说一点东西: 昨天晚上$9:05$开始太不好了,我在学校学校$9:40$放 ...

  3. Codeforces Round #500 (Div. 2) [based on EJOI]

    Codeforces Round #500 (Div. 2) [based on EJOI] https://codeforces.com/contest/1013 A #include<bit ...

  4. Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2)

    Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2) #include <bits/stdc++ ...

  5. Codeforces Round #626 (Div. 2, based on Moscow Open Olympiad in Informatics)

    A. Even Subset Sum Problem 题意 给出一串数,找到其中的一些数使得他们的和为偶数 题解 水题,找到一个偶数或者两个奇数就好了 代码 #include<iostream& ...

  6. Codeforces Round #596 (Div. 2, based on Technocup 2020 Elimination Round 2)

    A - Forgetting Things 题意:给 \(a,b\) 两个数字的开头数字(1~9),求使得等式 \(a=b-1\) 成立的一组 \(a,b\) ,无解输出-1. 题解:很显然只有 \( ...

  7. (AB)Codeforces Round #528 (Div. 2, based on Technocup 2019 Elimination Round

    A. Right-Left Cipher time limit per test 1 second memory limit per test 256 megabytes input standard ...

  8. Codeforces Round #434 (Div. 2, based on Technocup 2018 Elimination Round 1)&&Codeforces 861C Did you mean...【字符串枚举,暴力】

    C. Did you mean... time limit per test:1 second memory limit per test:256 megabytes input:standard i ...

  9. Codeforces Round #434 (Div. 2, based on Technocup 2018 Elimination Round 1)&&Codeforces 861B Which floor?【枚举,暴力】

    B. Which floor? time limit per test:1 second memory limit per test:256 megabytes input:standard inpu ...

  10. Codeforces Round #434 (Div. 2, based on Technocup 2018 Elimination Round 1)&&Codeforces 861A k-rounding【暴力】

    A. k-rounding time limit per test:1 second memory limit per test:256 megabytes input:standard input ...

随机推荐

  1. 每日总结|9.21-Hive搭建及报错解决方案

    搭建 安装hive 把 apache-hive-3.1.2-bin.tar.gz 上传到 linux 的/opt/software 目录下 解压 apache-hive-3.1.2-bin.tar.g ...

  2. JUC——让步与优先级

    Thread.yield():方法作用是:暂停当前正在执行的线程对象(及放弃当前拥有的cup资源),并执行其他线程 yield():做的是让当前运行线程回到可运行的状态,以允许具有相同优先级的其他线程 ...

  3. 国产化软件新浪潮: spring 改造替代...

    中午看了篇<国产化软件新浪潮:jdk redis mysql tomcat nginx改造替代品及信创名录> 想给它补充个 spring 改造替代:) 七.Spring 替代品 - Sol ...

  4. Pytorch实现YOLOv3训练自己的数据集

    1.说明: 最近一直在研究深度学习框架PyTorch,就想使用pytorch去实现YOLOv3的object detection.在这个过程中也在各大论坛.贴吧.CSDN等中看了前辈们写的文章,在这里 ...

  5. Colaboratory使用教程

    Google Colaboratory 是一个 Google 研究项目,旨在帮助传播机器学习培训和研究成果.它是一个 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行.同时 ...

  6. Linux:LVM磁盘扩容实战

    1.列出分区表 命令:fdisk -l 查看到目前挂载了 vda1.vda2.vda3,并且查看到还有vdb 100G没有挂载,以及现在的LV大小仅为29G root@JumpServer-DB-T0 ...

  7. 关于windows激活程序的木马病毒分析及处置方法

    客户电脑中毒,锁定几个病毒进程.EDR杀毒.木马专杀工具无法处置,该现象是和深信服外网AF防火墙联动后发现的行为,EDR无感知. 该病毒特征为,每日早上用户开机,均检查到外链du.testjj.com ...

  8. 从传统行业到半导体行业开发(YMS,DMS,EAP,EDA)

    一线开发人: 今天半导体YMS 项目快要收尾了,我的心情有点高兴,多年来我一直保持着写作的习惯,总是想写一些什么,今天但是又不知道从何说起.自己从传统的行业转向左半导体行业开发.从电*机如软件开发到电 ...

  9. Programming Abstractions in C阅读笔记:p196

    <Programming Abstractions in C>学习第63天,p196总结.涉及到编程之外的知识,依然是读起来很费劲,需要了解作者在书中提到的人物(Edouard Lucas ...

  10. 仿微信语音聊天webrtc

    主要技术 MediaRecorder 录音 webrtc 获取麦克风 URL.createObjectURL 转换为url(实际生产中,通过后端转换blob为mp3网址) 实现elementui+vu ...