当前位置: 首页 > news >正文

Codeforces Round 866 (Div 2)(A - D)

Codeforces Round 866 (Div. 2)(A - D)

Dashboard - Codeforces Round 866 (Div. 2) - Codeforces

A. Yura’s New Name(思维)

思路:枚举每个下划线 , 计算其前后需要补齐的 ‘^’ 个数 , 注意特判样例四的特殊情况。

#include<bits/stdc++.h>
using namespace std;
#define fi first
#define se second
#define IOS std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#define int long long
const int N = 2e6 + 10;
const int mod = 1e9 + 7;
typedef pair<int,int>PII;int n , t;
string s;signed main(){IOScin >> t;while(t --){cin >> s;n = s.size();int res = 0;if(s == "^") res += 1;for(int i = 0 ; i < n ; i ++){if(s[i] == '_'){if(i == 0) res += 1;else{if(s[i - 1] == '_') res += 1;}}}if(s[n - 1] == '_') res += 1;cout << res << "\n";}return 0;
}
//freopen("文件名.in","r",stdin);
//freopen("文件名.out","w",stdout);

B. JoJo’s Incredible Adventures(思维)

思路:手模一下可以发现 ,全是 1 的时候 , 答案就是 n * n , 当不全是 1 的时候 , 需要找到环上最长的连续 1 的个数 , 假设为 y , 答案就是 1 * y , 2 * (y - 1) , …… , (y - 1) * 2 , y * 1 里面最大的。把环复制两边断环为链。

#include<bits/stdc++.h>
using namespace std;
#define fi first
#define se second
#define IOS std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#define int long long
const int N = 2e6 + 10;
const int mod = 1e9 + 7;
typedef pair<int,int>PII;int t , n;
string s;bool judge(string s){for(int i = 0 ; i < n ; i ++) if(s[i] == '0') return 0;return 1;
}signed main(){IOScin >> t;while(t --){cin >> s;n = s.size();int maxx = 0;int res = 0;if(judge(s)){res = n * n;}else{s = s + s;for(int i = 0 ; i < 2 * n ; i ++){if(s[i] == '0') s[i] = ' ';}stringstream cin(s);while(cin >> s){int now = s.size();maxx = max(maxx , now);}for(int i = 1 ; i <= maxx ; i ++){res = max(res , i * (maxx - i + 1));}	}cout << res << "\n";}return 0;
}
//freopen("文件名.in","r",stdin);
//freopen("文件名.out","w",stdout);

C. Constructive Problem(思维)

思路:这题的样例给的很全 , 手摸一下就能出来做法 , 首先求出当前序列的 mex , 假设为 x, 我们操作完之后序列的 mex 变成 x + 1 。我们分两种情况 : 第一种 :序列中原本有 x + 1 , 我们就要贪心的把含有 x + 1 的最小区间推平 , 然后检查操作后的 mex 是否是 x + 1 即可。第二种 :序列中没有 x + 1 , 这时候我们需要找一个不影响组成原来 mex 的元素进行推平 , 比如 0 1 1 2 2 4 5 ,012是影响 mex 的元素 , 多出来的 1245 显然对于 mex 没影响 , 选择一个执行区间推平操作即可。

#include<bits/stdc++.h>
using namespace std;
#define fi first
#define se second
#define IOS std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#define int long long
const int N = 2e6 + 10;
const int mod = 1e9 + 7;
typedef pair<int,int>PII;int t , n;
int a[N];signed main(){IOScin >> t;while(t --){cin >> n;map<int , int>mp;int res = 0;for(int i = 1 ; i <= n ; i ++) cin >> a[i] , mp[a[i]] = 1;for(int i = 0 ; ; i ++) if(mp[i] == 0){res = i;break;} res += 1;bool tag = 0;if(mp[res]){int l = 0 , r = 0;for(int i = 1 ; i <= n ; i ++) if(a[i] == res){l = i;break;}for(int i = n ; i >= 1 ; i --) if(a[i] == res){r = i;break;}for(int i = l ; i <= r ; i ++) a[i] = res - 1;mp.clear();for(int i = 1 ; i <= n ; i ++) mp[a[i]] = 1;int ans = 0;for(int i = 0 ; ; i ++) if(mp[i] == 0){ans = i;break;} if(res == ans) tag = 1;}else{int need = n - (res - 1);if(need) tag = 1;}if(tag) cout << "YES\n";else cout << "NO\n";}return 0;
}
//freopen("文件名.in","r",stdin);
//freopen("文件名.out","w",stdout);

D. The Butcher(思维 + 模拟)

思路:对于每一个矩形 , 面积是确定的 , 且第一次切割的时候横切还是竖切 , 原本矩形另一维度的值会保留。我们求出切割后矩形长宽两个维度的最值 , 这样就能得出两组答案。(maxh , area / maxh) , (area / maxw , maxw). 现在只需要验证这两组答案即可。验证的过程就是模拟切割的过程 , 我们每次切割过后 , 当前矩形的一个长 / 宽 是会保留下来的 , 并且是剩余中最大的那个 , 用优先队列分别维护最大的 长 / 宽 ,这样我们就能确定每一步切割的是哪个块。

复杂度 nlogn

#include<bits/stdc++.h>
using namespace std;
#define fi first
#define se second
#define IOS std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#define int long long
const int N = 2e6 + 10;
const int mod = 1e9 + 7;
typedef pair<int,int>PII;int t , n ;
int area;
int a[N] , b[N];
bool vis[N];
int h , w;
set<PII>ans;void solve(int x , int y){int now_h = x , now_w = y;if(x * y != area) return ;for(int i = 1 ; i <= n ; i ++) vis[i] = 0;priority_queue<PII , vector<PII> , less<PII>> hx , wx;for(int i = 1 ; i <= n ; i ++){hx.push({a[i] , i});wx.push({b[i] , i});}for(int i = 1 ; i <= n ; i ++){while(vis[hx.top().se]) hx.pop();while(vis[wx.top().se]) wx.pop();int pos = -1;if(hx.top().fi == x) pos = hx.top().se;if(wx.top().fi == y) pos = wx.top().se;if(pos == -1) return ;if(hx.top().fi == x){y -= b[pos];}else{x -= a[pos];}vis[pos] = 1;}if(!(x * y)) ans.insert({now_h , now_w});
}signed main(){IOScin >> t;while(t --){cin >> n;area = 0;for(int i = 1 ; i <= n ; i ++){cin >> a[i] >> b[i];area += a[i] * b[i];}h = *max_element(a + 1 , a + 1 + n);w = *max_element(b + 1 , b + 1 + n);solve(h , area / h);solve(area / w , w);cout << ans.size() << "\n";for(auto [x , y] : ans) cout << x << " " << y << "\n";ans.clear();}return 0;
}
//freopen("文件名.in","r",stdin);
//freopen("文件名.out","w",stdout);

相关文章:

Codeforces Round 866 (Div 2)(A - D)

Codeforces Round 866 (Div. 2)(A - D) Dashboard - Codeforces Round 866 (Div. 2) - Codeforces A. Yura’s New Name&#xff08;思维&#xff09; 思路&#xff1a;枚举每个下划线 &#xff0c; 计算其前后需要补齐的 ‘^’ 个数 &#xff0c; 注意特判样例四的特殊情况…...

QTday3(QT实现文件对话框保存操作、实现键盘触发事件【WASD控制小球的移动】)

1.实现文件对话框保存操作 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }void Widget::on_fontBtn_clicked() {//调用QFo…...

WPF基础入门-Class8-资源基础

WPF基础入门 Class8-资源基础 前言&#xff1a;方便各种资源的集中管理和动态效果 静态引用&#xff1a;初始化的时候确定样式&#xff0c;后续不发生改变 动态引用&#xff1a;样式随着引用的内容一起改变 1、新建资源字典.xaml&#xff0c;创建一个边框颜色资源MyBrush和一…...

Axure RP PC电商平台Web端交互原型模板

Axure RP PC电商平台Web端交互原型模板。原型图内容齐全&#xff0c;包含了用户中心、会员中心、优惠券、积分、互动社区、运营推广、内容推荐、商品展示、订单流程、订单管理、售后及服务等完整的电商体系功能架构和业务流程。 在设计尺寸方面&#xff0c;本套模板按照主流的…...

Ubuntu目录和linux内核文件用途

一&#xff0c;目录&#xff1a; 1./:根目录&#xff0c;是整个文件系统的起点 2./bin:binary 二进制可执行文件目录&#xff0c;包含用于系统启动和运行的基本命令 3./boot: 启动加载器目录&#xff0c;包含用于系统启动的内核和引导程序文件。 4./dev: device 设备文件目录&a…...

更快更强更稳定:腾讯向量数据库测评

向量数据库&#xff1a;AI时代的新基座 人工智能在无处不在影响着我们的生活&#xff0c;而人工智能飞速发展的背后是需要对越来越多的海量数据处理&#xff0c;传统数据库已经难以支撑大规模的复杂数据处理。特别是大模型的出现&#xff0c;向量数据库横空出世。NVIDIA CEO黄…...

【java web】JSP-Java Server Page

前言 这个框架我用得不多&#xff0c;感觉和python的django一样&#xff0c;前后端结合太紧密了&#xff0c;适合个人开发 get 明文请求&#xff0c;可以被直接收藏 post 密文请求 JSP Java Server Page&#xff08;JSP&#xff09;HTMLJava code 步骤&#xff1a; 1.…...

java文件命令行报错: 找不到或无法加载主类XXX报错及解决

前言 之前遇到过几次&#xff0c;后面稀里糊涂的解决了。今天详细记录一下&#xff0c;可能不全或有些错误&#xff0c;还请各位指正。 你要启动一个类的话首先要有类。 在这里&#xff0c;类有两种&#xff0c; 一个是带包名&#xff08;package&#xff09;的还有一个是没包…...

算法训练营day46|动态规划 part08:完全背包 (LeetCode 139. 单词拆分)

139. 单词拆分 (求排列方法) 题目链接&#x1f525;&#x1f525; 给定一个非空字符串 s 和一个包含非空单词的列表 wordDict&#xff0c;判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 说明&#xff1a; 拆分时可以重复使用字典中的单词。 你可以假设字典中没…...

Java网络编程(二)Socket 套接字(TCP和UDP),以及TCP的回显

Socket 套接字&#xff08;TCP和UDP&#xff09;&#xff0c;以及TCP的回显 Socket 套接字数据报套接字UDPTCP流套接字编程TCP的长短连接实现一个简单回显服务器 Socket 套接字 我们软件工作者&#xff0c;着重编写的是应用层的代码&#xff0c;但是发送这个数据&#xff0c;我…...

C++ - 多态语法 - 虚函数使用介绍

多态简单介绍 多态就是多种形态&#xff0c;是不同的对象去完成同一个动作所产生的结果可能有多种。这种多种的形态我们称之为多态。 比如&#xff1a;我们在买票的时候的时候&#xff0c;可能有成人全价&#xff0c;儿童半价&#xff0c;军人免票等等。对于成人&#xff0c;儿…...

php获取客户端ip地址及ip所在国家、省份、城市、县区

摘要 获取客户端ip地址&#xff0c;然后使用这个ip地址获取所在的国家、省份、城市&#xff0c;可以在网站中实现IP属地&#xff0c;发布地等功能。 本文的获取IP地址信息均采自网络上免费的IP查询网站&#xff0c;通过其API或者网页HTML解析出的ip地址信息。 代码 <?p…...

Error: Port Library failed to initialize: -86

最近遇到一个很奇怪的错误&#xff0c;这里记录一下&#xff0c;以备以后再次遇到 Error: Port Library failed to initialize: -86 Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.背景是&#xff0c;就是一普…...

SOME/IP 支持两种序列化方式:TLV 和 TV

SOME/IP 是一种基于 IP 的可扩展面向服务的中间件协议,它可以在车载以太网中实现 ECU 之间的高效通信和互操作性。 SOME/IP 的序列化方式是指将数据结构或对象按照一定的规则转换成字节序列的过程,以便在网络中传输和解析。 SOME/IP 支持两种序列化方式:TLV 和 TV。 TLV是…...

Unity之3D物理导航系统

一 介绍 Unity自带寻路(导航)系统是unity官方自带的一种寻路系统。我们可以通过它来制作简单的寻路&#xff0c;比如可以制作点击某个位置&#xff0c;让角色自动的绕开障碍走到目标点的效果&#xff0c;比如可以制作敌人AI&#xff0c;让它可以通过NavMesh绕开障碍追击我方单…...

9.4黄金行情是否反转?今日多空如何布局?

近期有哪些消息面影响黄金走势&#xff1f;今日黄金多空该如何研判&#xff1f; ​黄金消息面解析&#xff1a;周一(9月4日)亚市盘中&#xff0c;现货黄金震荡走高&#xff0c;延续上周涨势&#xff0c;一度刷新日内高点至1946.16美元/盎司。周三&#xff0c;ISM将发布服务业P…...

Win10下使用vim9

作为一个经常与文字打交道的Writer&#xff0c;你在学会Vim的基本操作之后&#xff0c;就一定会爱上Vim的。 以下是Windows10_64位&#xff08;专业版&#xff09;环境中安装、使用Vim9的全过程&#xff0c;分享一下&#xff1a; 一、下载、安装Vim9 去Vim官网去下载最新的Vi…...

Flink+Flink CDC版本升级的依赖问题总结

之前使用Flink1.13Flink CDC2.0同步MySQL数据&#xff0c;想测试一下最新的几个版本。但是各种依赖冲突的报错&#xff0c;经过一段时间的调试&#xff0c;终于解决&#xff0c;现在总结一下。 1、flink1.15前后jar包名称不一样 flink-streaming-java、flink-clients、flink-…...

Matlab论文插图绘制模板第112期—带阴影标记的图

之前的文章中&#xff0c;分享了Matlab带线标记的图&#xff1a; 进一步&#xff0c;本期分享的是带阴影标记的图。 先来看一下成品效果&#xff1a; 特别提示&#xff1a;本期内容『数据代码』已上传资源群中&#xff0c;加群的朋友请自行下载。有需要的朋友可以关注同名公号…...

专业运动耳机哪个牌子好、专业运动耳机推荐

在进行运动时&#xff0c;倾听音乐实际上是一种放松大脑、放松身体的小技巧。毕竟运动是一个耗费体力最多的活动&#xff0c;整个过程也往往令人感到乏味。如果有音乐作伴&#xff0c;你的运动就会变得更加轻松愉快。那么&#xff0c;哪种耳机适合运动呢&#xff1f;我正好对此…...

清北博雅考研集训营:沉浸式封闭备考,为考研人铺就上岸之路

考研的赛道上&#xff0c;从来都不缺努力的人&#xff0c;缺的是科学的规划、优质的师资和沉浸式的备考环境。清北博雅教育集团深耕考研辅导领域十余载&#xff0c;凭借专业的教学体系、大咖级师资团队、完善的教学服务和亮眼的上岸成果&#xff0c;打造了专属考研人的集训营备…...

OpCore-Simplify:突破性黑苹果EFI配置革命,15分钟完成专业级系统搭建 [特殊字符]

OpCore-Simplify&#xff1a;突破性黑苹果EFI配置革命&#xff0c;15分钟完成专业级系统搭建 &#x1f680; 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify…...

宠物店主的福音:用LongCat一键生成宠物服装电商主图,省时省力

宠物店主的福音&#xff1a;用LongCat一键生成宠物服装电商主图&#xff0c;省时省力 1. 为什么宠物店主需要AI图片编辑工具 开宠物店的朋友们都知道&#xff0c;商品主图的质量直接影响销量。一件宠物小衣服&#xff0c;如果只是平铺拍摄或者随便套在模特身上&#xff0c;很…...

.NET源码生成器使用SyntaxTree生成代码及简化语法

一、SyntaxTree是什么SyntaxTree是语法树,是源代码的树形结构表示由Roslyn编译器生成在SourceGenerator中会自动生成整个源代码结构是1个SyntaxTreeSyntaxTree有一个根节点(SyntaxNode)每个SyntaxNode也包含一个SyntaxTree这样看整个源代码结构就是片“森林”public abstract p…...

基于SpringBoot+Vue的月度员工绩效考核管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】

摘要 现代企业管理中&#xff0c;绩效考核是提升员工工作效率、优化人力资源配置的重要手段。传统的绩效考核多依赖纸质记录或简单的电子表格&#xff0c;存在数据易丢失、统计效率低、反馈周期长等问题。随着信息化技术的发展&#xff0c;企业亟需一套高效、精准的绩效考核管理…...

像素幻梦效果对比:原生FLUX.1-dev vs 像素幻梦定制版输出质量分析

像素幻梦效果对比&#xff1a;原生FLUX.1-dev vs 像素幻梦定制版输出质量分析 1. 引言 在数字艺术创作领域&#xff0c;像素艺术因其独特的复古美感和现代应用价值而备受关注。Pixel Dream Workshop&#xff08;像素幻梦&#xff09;作为基于FLUX.1-dev模型构建的专业像素艺术…...

Qwen3-14B私有部署镜像算法题求解助手:从理解到实现

Qwen3-14B私有部署镜像算法题求解助手&#xff1a;从理解到实现 1. 为什么算法工程师需要AI助手 算法工程师和求职者每天都要面对各种算法问题&#xff0c;从简单的排序到复杂的动态规划。传统方式下&#xff0c;我们需要反复查阅资料、手动编写测试用例、调试代码&#xff0…...

Phi-4-mini-reasoning部署实操手册:supervisor服务管理与日志排查指南

Phi-4-mini-reasoning部署实操手册&#xff1a;supervisor服务管理与日志排查指南 1. 模型概述 Phi-4-mini-reasoning 是一个专注于推理任务的文本生成模型&#xff0c;特别适合处理数学题、逻辑题、多步分析和简洁结论输出。与通用聊天模型不同&#xff0c;它采用"题目…...

Qwen3-1.7B推理模式切换体验:思考模式与非思考模式效果对比

Qwen3-1.7B推理模式切换体验&#xff1a;思考模式与非思考模式效果对比 1. 引言&#xff1a;双模式推理的创新价值 在边缘计算和轻量化AI模型快速发展的今天&#xff0c;Qwen3-1.7B通过独特的动态双模式架构&#xff0c;为用户提供了灵活的推理选择。这款17亿参数的轻量级大语…...

告别“AI失忆“!掌握Harness Engineering,让AI秒变高效生产力工具

文章指出AI难以胜任长周期复杂任务并非因"不够聪明"&#xff0c;而是缺乏工程化工作方式。核心解法是引入Harness运行框架&#xff0c;通过外部记忆替代上下文依赖、强制任务拆解、建立固定执行循环及测试优先机制&#xff0c;将AI从单打独斗的"代码生成器"…...