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连试试水的深浅..... ...
随机推荐
- Angular 学习笔记 (cdk focus monitor 和一些 focus tabindex 的基础)
更新 : 2019-12-22 focusInitialElementWhenReady 我们经常会调用到这个方法, 它的逻辑是这样 先看有没有 cdkFocusInitial 有的就 focus ...
- 如何编写snort的检测规则
如何编写snort的检测规则 2013年09月08日 ⁄ 综合 ⁄ 共 16976字 前言 snort是一个强大的轻量级的网络入侵检测系统.它具有实时数据流量分析和日志IP网络数据包的能力,能够进行协 ...
- 3_PHP表达式_1_常量
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. PHP常量分为自定义常量与预定义常量. 1.自定义常量 在使用前必须先定义,PHP的define()函数专门用于定 ...
- Dijkstra+Heap模板
普通Dijkstra: void DijkstraPath(int v0,int vis[],int dist[],int path[]) { int onePath[maxn]; int d; in ...
- node.js 微信开发3-网页授权
1.配置公众号的自定义菜单,如 { "button":[ { "type":"view", "name":"公 ...
- java 扫描微信公众号二维码,关注并登录逻辑
场景:户扫描微信公众号的二维码,关注后自动登录网站,若已关注则直接登录. 逻辑: 系统生成带参数的临时二维码:参数 scene_str 自定义为唯一值(可以是uuid),临时二维码的生成方式参照官方接 ...
- MVC-Application
Application简述(不如Cache) 在asp.net环境下,Application对象来自HttpApplictionStat类.它可以在多个请求.连接之间共享公用信息,也可以在各个请求连接 ...
- PAT基础级-钻石段位样卷2-7-7 危险品装箱 (25 分)
集装箱运输货物时,我们必须特别小心,不能把不相容的货物装在一只箱子里.比如氧化剂绝对不能跟易燃液体同箱,否则很容易造成爆炸. 本题给定一张不相容物品的清单,需要你检查每一张集装箱货品清单,判断它们是否 ...
- 单链表(python)
# -*- coding: utf-8 -*- class Node(object): def __init__(self, value=None, next=None): # 这里我们 root 节 ...
- Topshelf 使用
前言 在写后台代码的过程中,经常会遇到要写一些单独的服务.以前呢,直接用的是 .NET 下的 “Windows 服务” 控件开发的. 这个传统的控件开发起来很不方面,使用也不友好.发现有用 Topsh ...