学校周赛(1)
A - Short Sort
题目:
思路:
本条题目只允许改一处地方,只有三个字母,我们可以直接枚举所有移动过的结果,同时使用哈希去记录其值,对于每一个输入我们都寻找是否有这个值记录,有则输出YES否则NO
代码:
#include<iostream>
#include<map>
using namespace std;
int main(){map<string,int> h;//初始化哈希h["abc"]=1;h["acb"]=1;h["cba"]=1;h["bac"]=1;int n;cin>>n;while(n--){string str;cin>>str;if(h[str]==1) cout<<"YES"<<endl;else cout<<"NO"<<endl;}return 0;
}
B - Good Kid
题目:
思路:
本题当中的数值全为正数,要想乘积最大则只需要最小值变大即可,因此首先对数组进行排序,将最小的数字+1,然后相乘即可。
代码:
#include<iostream>
#include<map>
#include<vector>
#include<algorithm>
using namespace std;
int main(){int t;cin>>t;while(t--){int n;cin>>n;int sum;vector<int> a(n);for(int i=0;i<n;i++) cin>>a[i];sort(a.begin(),a.end());sum=++a[0];for(int i=1;i<n;i++) sum*=a[i];cout<<sum<<endl;}return 0;
}
C - Target Practice
题目:
思路:
本题遍历五个环并乘以相应的值即可,五个环我们可以发现是完全对称的状态,我们可以通过不断缩小环即可。
代码:
#include<iostream>
#include<map>
#include<vector>
#include<algorithm>
#include<cstring>
using namespace std;
int solve(){string cnt[10];for(int i=0;i<10;i++) cin>>cnt[i];//完全对称int k=1;int sum=0;for(int top=0;top<5;top++){int c=0;for(int i=top;i<10-top;i++) if(cnt[i][top]=='X') c++;//i 0-9 j=0 第一列 for(int i=top+1;i<10-top-1;i++) if(cnt[10-top-1][i]=='X') c++;//i 9 j 1-8 最后一行for(int i=top;i<10-top;i++) if(cnt[i][10-top-1]=='X') c++;//i 0-9 j=9 最后一列for(int i=top+1;i<10-top-1;i++) if(cnt[top][i]=='X') c++;//i 0 j 1-8第一行 sum+=c*k; k++;}return sum;
}
int main(){int t;cin>>t;while(t--){int ans=solve();cout<<ans<<endl;}return 0;
}
D - 1D Eraser
题目:
思路:
本题问最小多少次能够将其染成W,只需要我们每次遇到B时,都进行k个染色即可
代码:
#include<iostream>
#include<map>
#include<vector>
#include<algorithm>
#include<cstring>
using namespace std;
int solve(){int ans=0;int n,k;cin>>n>>k;string str;cin>>str;for(int i=0;i<n;){if(str[i]=='B'){ans++;i+=k;} else i++;} return ans;
}
int main(){int t;cin>>t;while(t--){int ans=solve();cout<<ans<<endl;}return 0;
}
E - Building an Aquarium
题目:
思路:
本题考察的时二分,我们可以假设答案h初始值为0,然后将其慢慢上移,直到满足条件,此处不难看出h具有单调递增的特点,因此我们使用二分进行搜索答案,对于我们搜索出的二分只有当高度为h时所需水量小于等于我们提供的水量才能够满足我们的条件,满足条件则记录,最终取其最大值。
优化:当我们判断水是否满足时,可以先做一个排序,因为高度越小的所需要的水量越多,同时减少由于要遍历所带来的更多的判断步骤。
代码:
#include<iostream>
#include<vector>
using namespace std;typedef long long ll;void solve()
{int n, w;cin >> n >> w;vector<ll> a(n);for (int i = 0; i < n; i ++)cin >> a[i];
//此处排序,减少判断次数sort(a.begin(), a.end());ll l = 0, r = 2e9 + 1;
//二分答案hwhile (l < r){ll h = (l + r + 1) >> 1;ll t = 0;for (int i = 0; i < n; i ++)if (a[i] < h)t += h - a[i];else break;if (t <= w) l = h;else r = h - 1;}cout << r << endl;
}int main()
{int T; cin >> T;while (T --) solve();return 0;
}
F - Money Trees
题目:
思路:
本题考查的前缀和+滑动窗口,我们可以在统计统计前i个的和,那么窗口中的和则为 第r个 - 第l-1个,其次我们可以通过前缀和的思想来考虑哪一段树可以摘(r~r-b[r]),对于每一段我们通过滑动窗口的思想来确定边界。
代码:
#include<iostream>
#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
#define ll long long void to_do() {ll n, k, ans = 0, sum = 0;cin >> n >> k;vector<ll> cnt_num(n + 1), a(n + 1);vector<ll> cnt_h(n + 1);for (int i = 1; i <= n; i++) {cin >> a[i];cnt_num[i] = cnt_num[i - 1] + a[i];//前缀和,某个连续部分的和为cnt_num[r]-cnt_num[l-1]}for (int i = 1; i <= n; i++) cin >> cnt_h[i];ll l = 0, l_max=0;vector<int> b(n + 1);//可摘树的长度int idx = 0;for (int r = 1; r <= n; r++){//记录可摘树的长度if (r == 1|| cnt_h[r - 1] % cnt_h[r]){b[r] = 0;}else{b[r] = b[r - 1] + 1;}int l = max(r - b[r], idx);ll res = cnt_num[r] - cnt_num[l - 1];if (res <= k){ans = max(ans, r - l + 1ll);}else{while (res > k){res -= a[l];l++;}idx = l;ans = max(ans, r - l + 1ll);}}cout << ans << endl;
}
int main()
{int t; cin >> t;while (t--) to_do();return 0;
}
相关文章:

学校周赛(1)
A - Short Sort 题目: 思路: 本条题目只允许改一处地方,只有三个字母,我们可以直接枚举所有移动过的结果,同时使用哈希去记录其值,对于每一个输入我们都寻找是否有这个值记录,有则输出YES否则…...

人生苦短,我用Python✌
面向代码的解释型语言 数据开发和AI 编程语言:让计算机了解我们干什么,翻译官 1.下载软件 解释器安装 点击第二个 改路径 D:\python 安装 测试 winr打开 输入代码 输出 退出环境 exit() 新建文本文档后缀改成py 编写 运行 安装编写代码…...
uniapp js判断key是否在json中?
推荐学习文档 golang应用级os框架,欢迎stargolang应用级os框架使用案例,欢迎star案例:基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识,这里有免费的golang学习笔…...
Codeforces Round 975 (Div. 2) C. Cards Partition
题目链接:题目 大意: 给出若干种卡片,每种卡片有一定数量,你可以加入不超过 k k k张任意已给出种类的卡片,使得它们可以被分成若干组,每组容量一定,且同组内不存在相同种类的卡片,…...

Qt 首次配置 Qt Creator 14.01 for Python
前言: 如何用QT实现Python的配置的交互界面。本文从0开始,进行实践的介绍。 在上一节里面,我们做了社区版本的配置: https://blog.csdn.net/yellow_hill/article/details/142597007?spm1001.2014.3001.5501 这一节࿰…...
【python】代码发布前检查- vulture:查找死代码
分析Python项目中未被使用的.py文件 Vulture: Vulture是一个专门用于查找Python代码中的死代码的工具。它可以识别未使用的代码,包括未导入的模块。 安装: pip install vulture使用: vulture your_project_directory...

Yolov10环境配置
参考文章:1.YOLOv10超详细环境搭建以及模型训练(GPU版本)-CSDN博客 2.Windows下安装pytorch教程(下载.whl的方式)_pytorch whl-CSDN博客 安装步骤和文件夹顺序一样 1.安装CUDA和cuDNN 1.1安装CUDA 1.1.1查看当前你的电脑显卡支持的最高CUD…...
iOS 提取图片的主题色,并支持灵活提取
遇到一个需求,要提取图片中的色调,但还有一点特殊的需求,就是不是提取颜色最多的色调,也不是平均的色调,是图片中偏暗的色调 这就需要我们动态的调整我们提取的算法, 下面就看代码 dispatch_async(dispatch…...
语雀笔记使用记录
初识语雀 语雀官网 语雀帮助 教你如何使用语雀提高效率 语雀极简使用指南 | 10个常用技巧,带你快速入门 语雀安装 语雀下载地址 根据自己的pc平台下载对应的版本,然后傻瓜式安装即可 初试语雀 语雀为云笔记,并且其特性比较符合我个人的需求…...

安全教育培训小程序系统开发制作方案
安全教育培训小程序系统是为了提高公众的安全意识,普及安全知识,通过微信小程序的方式提供安全教育培训服务,帮助用户了解并掌握必要的安全防范措施。 一、目标用户 企业员工:各岗位员工,特别是IT部门、财务、行政等对…...

【面试题】软件测试实习(含答案)
软件测试实习常见面试题,主要是功能测试相关的基础问题 目录 一、软件测试基础 1、介绍一下你最近的项目,以及工作职责 2、软件项目的测试流程? 3、黑盒测试与白盒测试的区别? 4、黑盒测试常见的设计方法?怎么理解等价类方法和边界值方法 1&…...

后端回写前端日期格式化
问题 不进行格式化处理,就会导致传递的字符串很奇怪 解决方案 注解(字段) <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.2</…...
微信小程序开发系列之-在微信小程序中使用云开发
微信小程序开发系列之-在微信小程序中使用云开发 随着微信小程序的快速发展,云开发成为了一个强大的工具,它提供了无需搭建和维护服务器的便捷环境。云开发允许开发者直接使用云数据库、存储和云函数等服务,大大简化了小程序的开发流程。在本…...

《论文阅读》 用于产生移情反应的迭代联想记忆模型 ACL2024
《论文阅读》 用于产生移情反应的迭代联想记忆模型 ACL2024 前言简介任务定义模型架构Encoding Dialogue InformationCapturing Associated InformationPredicting Emotion and Generating Response损失函数问题前言 亲身阅读感受分享,细节画图解释,再也不用担心看不懂论文啦…...
零基础教你如何开发webman应用插件
0X03 应用目录机构 plugin/ └── dingdingtalk │ ├── api │ │ └── Install.php │ ├── app │ │ ├── controller │ │ │ └── IndexController.php │ │ ├── functions.php │ │ ├── middleware │ │ ├── mo…...

AVL树(平衡二叉树)的介绍以及相关构建
欢迎光临 : 羑悻的小杀马特-CSDN博客 目录 一AVL树的介绍: 二AVL树的实现: 1结构框架: 2节点的插入: 旋转: 21左单旋: 2.1.1左单旋介绍及步骤: 2.1.2左单旋代码实…...
SAP员工士气因重组受到打击
SAP在2024年经历了员工士气显著下降的局面,特别是在国内员工中。这一变化与公司在1月宣布的重组计划紧密相关。根据彭博社的报道,6月进行的一项调查显示,SAP约16,500名员工中,有51%愿意接受竞争对手的类似职位,而对公司…...
Unity3D 中构建行为树插件详解
前言 在Unity3D中,行为树(Behavior Tree)是一种用于游戏AI设计和实现的高级工具,它提供了一种结构化和模块化的方式来管理游戏实体的行为。行为树通过树状结构组织了一系列节点,每个节点代表了一个决策或动作。这种结…...
数学符号练习-函数连续性与导数
前言 其实主要的目的是可以在文本中输出各种数学符号,便于以后用到的时候有现成的例子拿过来抄~~ 函数的连续性 设函数 y f ( x ) yf(x) yf(x)在点 x 0 x_0 x0的某邻域内有定义,如果当自变量的改变 Δ x Δx Δx趋近于0时,相应函数的改变量也趋近于…...

笔记本维修与拆解(一)
清灰: 拆螺丝: 拔掉电池供电: 多按几次开机键,放电: 涂抹硅胶的时候,千万不要涂很多,溢出CPU,如果硅胶溢到焊盘上去的话很容易热胀冷缩短路 【联想拯救者Y9000P和R9000P最简单清灰教程…...

.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...

并发编程 - go版
1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...