AtCoder Regular Contest 177
A - Excange
题意
用这些零钱能否不找零地买这些物品
思路
因为 500 = 5 × 100 = 10 × 50 = 50 × 10 = 500 × 1 500=5\times 100=10\times 50=50\times 10=500\times 1 500=5×100=10×50=50×10=500×1。
所以说,我们这道题可以采用贪心算法,优先取大的减去目前零钱最大的即可。
#include <iostream>
#include <cstdio>
#include <queue>
#define N 15
using namespace std;
int money[N],n,X[N],sum,p[10]={0,1,5,10,50,100,500};
priority_queue<int> q;
signed main(){cin >> money[1] >> money[2] >> money[3] >> money[4] >> money[5] >> money[6] >> n;for (int i = 1;i <= n;i ++) cin >> X[i],sum += X[i],q.push(X[i]);if (sum > money[1] * 1 + money[2] * 5 + money[3] * 10 + money[4] * 50 + money[5] * 100 + money[6] * 500) return cout << "No",0;for (int i = 6;i;i --) while (!q.empty() && money[i] && q.top() >= p[i]) {int t = q.top();q.pop();t -= p[i];money[i] --;
// cout << i << ' ' << t << ' ' << t + p[i] << ' ' << money[i] << endl;if (t)q.push(t);}if (!q.empty()) cout << "No";else cout << "Yes";return 0;
}
B - Puzzle of Lamps
关灯
有两个选择:
A:把排最左边的0变成1;B:把排最左边的1变成0。
思路
很容易想到先把 A 选择到最右边的位置,然后用 B 把最右边 1 的位置的左边第一个没有 0 的位置,一直重复操作即可。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#define N 50
using namespace std;
int n;
string s;
int ans = 0;
string ans_st = "";
signed main(){cin >> n >> s;int k = n - 1;while (k >= 0) {while (k >= 0 && s[k] != '1') k --;ans += k + 1;for (int i = 0;i <= k;i ++) ans_st += "A";while (k >= 0 && s[k] != '0') k --;ans += k + 1;for (int i = 0;i <= k;i ++) ans_st += "B";}cout << ans << endl << ans_st;return 0;
}
C - Routing
题意
有一个 N × N N\times N N×N 的地图,每个格子上标有红色或者蓝色(R 或者 B),现在我们有若干次操作把当前格子变成紫色(P,代表既是 R 的路又是 B 的路)使得:
- 从 ( 1 , 1 ) → ( N , N ) (1,1)\rightarrow(N,N) (1,1)→(N,N) 只走
R的路能够到达; - 从 ( 1 , N ) → ( N , 1 ) (1,N)\rightarrow(N,1) (1,N)→(N,1) 只走
B的路能够到达。
求操作的最小次数。
思路
观察特性,发现这里走的两条路径必定会有一个交点。但是这个交点只会被算一次。
我们可以想到用 BFS 搜索 ( 1 , 1 ) → ( N , N ) (1,1)\rightarrow(N,N) (1,1)→(N,N) 以及 ( 1 , N ) → ( N , 1 ) (1,N)\rightarrow(N,1) (1,N)→(N,1) 的路径的最少走不合法的格子的数量,最后相加即可。
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <vector>
#define N 505using namespace std;
const int INF = 1e9;
int n,vis1[N][N],vis2[N][N],fxy[4][2] = {{1,0},{-1,0},{0,-1},{0,1}};
bool a[N][N];
struct pos{int x,y,sp;
};
queue<pos> q;
signed main(){cin >> n;for (int i = 1;i <= n;i ++)for (int j = 1;j <= n;j ++) {char x;cin >> x;a[i][j] = (x == 'R');}for (int i = 0;i <= n + 1;i ++)for (int j = 0;j <= n + 1;j ++)vis1[i][j] = vis2[i][j] = INF;vis1[1][1] = 0;q.push({1,1,0});while(!q.empty()) {pos t = q.front();q.pop();for (int i = 0;i < 4;i ++) {int xx = t.x + fxy[i][0],yy = t.y + fxy[i][1];if (xx < 1 || yy < 1 || xx > n || yy > n) continue;int nt =t.sp;if (!a[xx][yy]) nt ++;if (vis1[xx][yy] <= nt) continue;q.push({xx,yy,nt});vis1[xx][yy] = nt;}}q.push({1,n,0});while(!q.empty()) {pos t = q.front();q.pop();for (int i = 0;i < 4;i ++) {int xx = t.x + fxy[i][0],yy = t.y + fxy[i][1];if (xx < 1 || yy < 1 || xx > n || yy > n) continue;int nt =t.sp;if (a[xx][yy]) nt ++;if (vis2[xx][yy] <= nt) continue;q.push({xx,yy,nt});vis2[xx][yy] = nt;}}cout << vis1[n][n] + vis2[n][1] << endl;return 0;
}
D - Earthquakes(以后更)
题意
有 n n n 个建筑,高度都为 j j j。
有 n n n 次地震,第 i i i 次地震的两级中的一级会倒下,向左和向右倒的概率为 50 % 50\% 50%,而且当前第 i i i 个建筑的位置为 a i a_i ai,如果说 ∣ a i − a i ± 1 ∣ ≤ h |a_i-a_{i\pm1}|\le h ∣ai−ai±1∣≤h,那么那个建筑也会随着他倒下的方向倒下。
那么:第 i i i 次地震时,建筑全都倒下的概率是多少?请将它乘上 2 n 2^n 2n 后输出,可以证明,输出的是整数。
思路
略
相关文章:
AtCoder Regular Contest 177
A - Excange 题意 用这些零钱能否不找零地买这些物品 思路 因为 500 5 100 10 50 50 10 500 1 5005\times 10010\times 5050\times 10500\times 1 5005100105050105001。 所以说,我们这道题可以采用贪心算法,优先取大的减去目前零钱最大的…...
【C++】 C++ 编写 鸡兔同笼程序
文章目录 “鸡兔同笼”问题是一个经典的数学问题,要求根据总头数和总腿数来计算鸡和兔的数量。假设鸡有 2 条腿,兔有 4 条腿。可以通过以下步骤求解这个问题: 1 .设鸡的数量为 x,兔的数量为 y。2.根据题意,我们有以下…...
[动画详解]LeetCode151.翻转字符串里的单词
💖💖💖欢迎来到我的博客,我是anmory💖💖💖 又和大家见面了 欢迎来到动画详解LeetCode算法系列 用通俗易懂的动画让算法题不再神秘 先来自我推荐一波 个人网站欢迎访问以及捐款 推荐阅读 如何低成…...
如何使用 ArcGIS Pro 制作地震动画
在做某些汇报的时候,除了图文,如果有动画肯定会成为加分项,这里为大家介绍一下如何使用 ArcGIS Pro 制作地震动画,希望能对你有所帮助。 添加时间 在图层属性内,选择时间选项卡,图层时间选择每个要素具有…...
Unity 初步了解
1.Unity 是啥 Unity是一个实时3D互动内容创作和运营平台。它可以帮助游戏开发、美术、建筑、汽车设计、影视等行业的创作者将创意变为现实。Unity平台提供了一套完善的软件解决方案,用于创作、运营和变现任何实时互动的2D和3D内容,支持的平台包括手机、…...
爬虫学习(4)每日一笑
代码 import requests import re import osif __name__ "__main__":if not os.path.exists("./haha"):os.makedirs(./haha)url https://mlol.qt.qq.com/go/mlol_news/varcache_article?docid6321992422382570537&gameid3&zoneplat&webview…...
生产环境节点扩容方案
datanode节点扩缩容(1人天) 注意:新增节点需要走商务,节点扩容需要申请新的license 制品包下载 #内网下载(环境检查脚本) wget --user=admin --password=Y!bC2hx0TN@21cal http://10.69.71.180:8082/artifactory/product/qiudongyang/precheck/os-check20221127.tar…...
Spring线程池配置
配置Spring线程池,特别是ThreadPoolTaskExecutor,通常涉及设置一些关键参数以控制线程池的行为和性能。以下是一些基本的配置步骤: 定义配置类 首先,需要创建一个配置类,使用@Configuration注解标记,并启用异步执行功能,使用@EnableAsync注解。 @Configuration @Enab…...
Unity学习笔记---物理引擎
RigidBody 刚体 1,Gravity Scale 重力参数,是一个乘量参数,调整为0则不受重力影响。 2,Sleeping Mode 睡眠模式,分为永不睡眠/开始时睡眠/开始时不睡眠3种。如需要一直碰撞检测可以选择永不睡眠。 BoxCollider 碰撞…...
Vue与Java使用AES加密与解密
CBC模式(通过偏移值进行加密,更具安全性) 一、VUE: 1、安装 npm install crypto-js 2、编写公用js(在common文件夹下创建一个crypto.js) 注意:key最少要有16个字符,iv最少6个字符…...
B/S版+java开发的医院绩效考核系统maven+Visual Studio Code 医院绩效考核管理系统 提升医疗服务质量的关键
B/S版java开发的医院绩效考核系统mavenVisual Studio Code 医院绩效考核管理系统 提升医疗服务质量的关键 医院绩效评价系统的建设,优化医院绩效管理体系,规范化工作目标的设计、沟通、评价与反馈,改进和提供医院管理人员的管理能力和成效&am…...
汇昌联信科技:拼多多电商的运营流程有哪些?
在当今互联网高速发展的时代,电商平台层出不穷,其中拼多多以其独特的团购模式和低价策略迅速崛起,成为众多消费者和商家的新宠。那么,拼多多电商的运营流程究竟包含哪些环节呢?接下来,我们将从商品上架、营销推广、订…...
AI大模型探索之路-训练篇20:大语言模型预训练-常见微调技术对比
系列篇章💥 AI大模型探索之路-训练篇1:大语言模型微调基础认知 AI大模型探索之路-训练篇2:大语言模型预训练基础认知 AI大模型探索之路-训练篇3:大语言模型全景解读 AI大模型探索之路-训练篇4:大语言模型训练数据集概…...
现代 c++ 一:c++11 ~ c++23 新特性汇总
所谓现代 c,指的是从 c11 开始的 c,从 c11 开始,加入一些比较现代的语言特性和改进了的库实现,使得用 c 开发少了很多心智负担,程序也更加健壮,“看起来像一门新语言”。 从 c11 开始,每 3 年发…...
【c++】全面理解C++多态:虚函数表深度剖析与实践应用
🔥个人主页:Quitecoder 🔥专栏:c笔记仓 朋友们大家好,通过本篇文章,来详细理解多态的内容 目录 1.多态的定义及实现1.1多态的构成条件1.2虚函数的重写1.3 C11 override 和 final1.4重载、覆盖(重写)、隐藏…...
分享四种免费获取SSL的方式
SSL证书目前需要部署安装的网站很多,主要还是基于国内目前对证书的需求度在不断的升高,网站多了、服务器多了之后。网络安全问题就成为了大家不得不面对的一个重要的问题了。SSL证书的作用有很多,这里就不一一详述了,本期作品主要…...
2024.5.14晚训题解
非线性结构没懂的同学多去看看课程回放。 A题Overall Winner 题解 很基础的题目,输入字符串,用计数器去统计一下就好了。 因为赢的次数一样的时候优先判断前面的那个人赢,所以说两个人赢的次数相同的时候我们不必 去记录胜者。 #include<…...
jQuery的选择器与自带函数详解
在前端开发中,jQuery是一个广泛使用的JavaScript库,它极大地简化了HTML文档遍历、事件处理、动画以及AJAX交互等操作。本文将通过一个示例页面,详细介绍jQuery的选择器和一些常用的自带函数。 示例代码优化 首先,我们来优化和完…...
Next.js与SSR:构建高性能服务器渲染应用
1. 创建项目 通过create-next-app脚手架创建一个新的Next.js项目: npx create-next-app my-app cd my-app2. 自动SSR 在Next.js中,每个.js或.jsx文件的组件都会被自动处理为SSR页面。例如,创建一个pages/index.js文件: // pag…...
什么是MVC?什么是SpringMVC?什么是三层架构?
文章目录 应用分层什么是MVC?什么是 SpringMVC?三层架构三层架构和MVC的关系 应用分层 在讲解什么是MVC之前,先来理解一下什么是应用分层。 应用分层是一种软件开发设计思想,将应用程序划分成N个层次,每个层次都分别负责自己的…...
别再手动传日志了!用Flume+Spark Streaming搭建实时数据管道(附完整配置与避坑记录)
从日志采集到实时分析:FlumeSpark Streaming实战架构解析 凌晨三点,服务器突然告警,而你还在手动拉取日志文件排查问题——这可能是每个运维工程师都经历过的噩梦场景。在用户行为分析、系统监控等实时性要求极高的领域,传统的手…...
别再死磕PI参数了!用MATLAB/Simulink手把手教你搭建永磁同步电机的内模控制器(附仿真模型)
永磁同步电机内模控制实战:从数学模型到Simulink仿真 在电机控制领域,PI控制器就像是一把瑞士军刀——简单实用但需要反复调试。当我在实际项目中遇到永磁同步电机(PMSM)参数变化大、耦合严重的问题时,传统PI控制的表现总是不尽如人意。直到尝…...
1111111111111111111111
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...
NoSleep防休眠工具:彻底解决Windows系统意外休眠的终极方案
NoSleep防休眠工具:彻底解决Windows系统意外休眠的终极方案 【免费下载链接】NoSleep Lightweight Windows utility to prevent screen locking 项目地址: https://gitcode.com/gh_mirrors/nos/NoSleep 在数字化办公时代,电脑意外休眠已成为影响工…...
CUB-200-2011 鸟类数据集的训练及应用 鸟类识别 适用于细粒度分类研究,多种计算机视觉任务
CUB-200-2011 鸟类数据集的训练及应用 鸟类识别 文章目录🧰 一、环境搭建1. 安装 Python 虚拟环境(推荐使用 Conda)2. 安装必要依赖📁 二、数据集结构与准备3. 构建 PyTorch Dataset🏋️♂️ 三、构建模型并训练1. 使…...
3个维度解锁抖音内容采集:从个人创作到企业运营的效率革命
3个维度解锁抖音内容采集:从个人创作到企业运营的效率革命 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback s…...
读2025世界前沿技术发展报告30海洋技术发展(下)
1. 强化无人及反无人作战能力建设1.1. 英美发布相关战略文件,顶层规划无人、反无人作战能力建设1.1.1. 《无人机战略》文件,分析无人系统对传统战争形态转变的影响1.1.2. 《反无人系统战略》1.1.2.1. 包括设立联合反小型无人机系统办公室(J…...
2025届学术党必备的AI科研助手实测分析
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 为要切实有效降低AIGC内容的可被识别程度,我们是能够从生成这个关键阶段以及后处…...
数字化转型架构下的数据安全治理指南:以数据安全为核心的安全立体防御体系、数据安全体系、数据安全现状评估报告···(附相关资料)
微信公众号:木木自由,更多数据分析,经营分析、财务分析、商业分析、数据治理、数据要素、数据资产干货以及资料分享木木自由 数据分析领地Digital Technology Summit在数字经济深度发展的今天,数字化转型已成为企业生存与发展的…...
Wand-Enhancer深度解析:解锁WeMod高级功能的双轨解决方案
Wand-Enhancer深度解析:解锁WeMod高级功能的双轨解决方案 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 你是否厌倦了WeMod的高级功能限制&…...
