Codeforces Round #583
Contest Info
| Solved | A | B | C | D | E | F | G | H |
|---|---|---|---|---|---|---|---|---|
| 4/8 | O | O | O | Ø | - | - | - | - |
- O 在比赛中通过
- Ø 赛后通过
- ! 尝试了但是失败了
- - 没有尝试
Solutions
A. Optimal Currency Exchange
题意:
有\(n\)个卢布,\(d\)卢布可以换\(1\)美元,\(e\)卢布可以换\(1\)欧元。
美元只能按\(1, 2, 5, 10, 20, 50, 100\)这样的面额兑换。
欧元只能按\(5, 10, 20, 50, 100, 200\)这样的面额兑换。
问兑换之后剩下的卢布最少是多少?
思路:
首先兑换美元只考虑\(1\)美元为单位进行兑换即可。
欧元只考虑\(5\)欧元为单位进行兑换即可。
然后考虑兑换\(x\)个\(5\)欧元和\(y\)个\(1\)美元。
考虑到\(e \leq 30\),那么\(5e \leq 150\),那么\(x\)的最大范围不会超过\(10^6\),那么直接枚举\(x\)即可。
B. Badges
题意:
有\(b\)个男孩和\(g\)个女孩,现在有\(n + 1\)个盒子,第\(i\)个盒子里面有\(i \in [0, n]\)个红徽章以及\(n - i\)个蓝徽章。
有一个游戏,有\(n\)个人接受了邀请,问最少保留多少个盒子,使得不管这\(n\)个人中有\(x \leq b\)个男孩,有\(y \leq g\)个女孩,使得保留下来的箱子中至少存在一个箱子,使得\(i \geq x\)并且\(n - i \geq y\)。
思路:
考虑枚举\(x \in [0, b]\)和\(y \in [0, g]\),当且仅当\(x + y = n\)时这种情况的盒子才需要保留。
否则都可以规约到另一个盒子。
C. Bad Sequence
题意:
有一个括号序列,问能否最多移动一个括号的位置,使得它合法。
思路:
将最后一个左括号的位置移动最左边,再检查一下是否合法即可。
为什么?
一个合法的括号序列只要它满足任意一个前缀左括号的数量都大于等于右括号数量即可
D. Treasure Island
题意:
在一个\(n \cdot m\)和矩形中,有些地方不能走,一个人从\((1, 1)\)出发,只能向右和向下走,问最少在几个空地上摆障碍物,使得那个人到不了\((n, m)\)。
思路:
显然答案的取值为\(0, 1, 2\)。
如果不连通,答案为\(0\)。
否则,加边形成一个\(DAG\),然后跑支配树,看看\((1, 1)\)到\((n, m)\)上有没有支配点,有的话,答案为\(1\)。
其实好像也是个最小割问题?
Codeforces Round #583的更多相关文章
- Codeforces Round #583 (Div. 1 + Div. 2, based on Olympiad of Metropolises)
传送门 A. Optimal Currency Exchange 枚举一下就行了. Code #include <bits/stdc++.h> using namespace std; t ...
- Codeforces Round #583 (Div. 1 + Div. 2, based on Olympiad of Metropolises) C题
C. Bad Sequence Problem Description: Petya's friends made him a birthday present — a bracket sequenc ...
- Codeforces Round #583 (Div. 1 + Div. 2, based on Olympiad of Metropolises) A题
A. Optimal Currency ExchangeAndrew was very excited to participate in Olympiad of Metropolises. Days ...
- Petya and Construction Set(图的构造) Codeforces Round #583 (Div. 1 + Div. 2, based on Olympiad of Metropolises)
题意:https://codeforc.es/contest/1214/problem/E 有2n个点,每个2*i和2*i-1的距离必须是Di(<=n),现在让你构造这个树. 思路: 因为Di小 ...
- Treasure Island(两遍dfs)-- Codeforces Round #583 (Div. 1 + Div. 2, based on Olympiad of Metropolises)
题意:https://codeforc.es/contest/1214/problem/D 给你一个n*m的图,每次可以往右或者往下走,问你使(1,1)不能到(n,m)最少要放多少 ‘ # ’ . 思 ...
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
- Codeforces Round #354 (Div. 2) ABCD
Codeforces Round #354 (Div. 2) Problems # Name A Nicholas and Permutation standard input/out ...
- Codeforces Round #368 (Div. 2)
直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...
- cf之路,1,Codeforces Round #345 (Div. 2)
cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅..... ...
随机推荐
- conda命令入坑记
conda命令入坑记 本人使用的软件版本: TypeError: LoadLibrary() argument 1 must be str, not None 网上太多的资料,大多都是在讲path的设 ...
- 海思SDK 与各芯片对照
本文链接:https://blog.csdn.net/liuxizhen2009/article/details/84261221 海思SDK不对外开放. 海思35系列sdk Hi3507 Hi3 ...
- Inline Hook 钩子编写技巧
Hook 技术通常被称为钩子技术,Hook技术是Windows系统用于替代中断机制的具体实现,钩子的含义就是在程序还没有调用系统函数之前,钩子捕获调用消息并获得控制权,在执行系统调用之前执行自身程序, ...
- 单例模式详解以及需要注意的地方(Singleton)
单例模式,顾名思义,就是在Java程序中只有唯一一个实例,这样做的好处是可以在不需要多个实例的对象采用单例模式可以节省内存,否则会造成不必要的内存浪费.单例模式的定义为:保证一个类只有一个实例,自己可 ...
- stm32 SD卡
容量等级 SD容量有8MB.16MB.32MB.64MB.128MB.256MB.512MB.1GB.2GB SDHC容量有2GB .4GB.8GB.16GB.32GB SDXC容量有32GB.48G ...
- Android NDK 学习之调用Java函数
本博客主要是在Ubuntu 下开发,且默认你已经安装了Eclipse,Android SDK, Android NDK, CDT插件. 在Eclipse中添加配置NDK,路径如下Eclipse-> ...
- js 递归获取子节点所有父节点,深度遍历获取第一个子树
前端需求. 递归 深度优先遍历算法 // 查找一个节点的所有父节点 familyTree (arr1, id) { var temp = [] var forFn = function (arr, i ...
- c# 接口使用
- CentOS 7的Linux系统优化加固
1.关闭selinux 2.关闭防火墙 3.关闭NetworkManager 4.为系统运维管理员创建普通用户,并配置sudo(vi sudo) 5.清空泄漏系统版本信息的文件 6.基础优化sshd ...
- 某公司git代码管理,到如何上线