CF986 div2 ABCD补题
//***不知道在不在进步
A
注意点:其实这个暴力就行,但有个限制,就是最多走100遍如果不到那就一定到不了。其实我感觉10遍就可以了,但WA了。不管怎么说,100遍不超时而且稳对。
代码:
#include<bits/stdc++.h>
using namespace std;int t;
int n,a,b;
string s;int main()
{cin>>t;while(t--){cin>>n>>a>>b;int x=0,y=0,flag=0,g=0;cin>>s;for(int i=0;i<s.size();i++){if(g>n*100)break;if(s[i]=='N')y++;else if(s[i]=='E')x++;else if(s[i]=='S')y--;else x--;
// cout<<x<<" "<<y<<" "<<g<<endl;if(x==a&&y==b){flag=1;break;}if(i==(s.size()-1))i=-1;g++;}if(flag==1){cout<<"YES\n";}else{cout<<"NO\n";}}return 0;
}
B
题目大意:n个数的等差数列,通过将其最大值不断取MEX,变成0 1 ... n-1的排列。
大体思路:这题其实不难想到通解,但是就是不成立的地方的特判有些细节要注意。先说通解的情况。如果b>0,那么这个排列本身就是递增的。那么只要我们每一次都变最后一位,那么一定可以将后面>n-1的全变为0~n-1范围内。接下来再考虑b=0的情况。一开始我以为只有bc都=0时才不行,但事实上b=0时c和n是有条件的。只有b==0&&n>c+2时才是不行的。
代码详解:
#include<iostream>
using namespace std;
#define int long long int t;
int n,b,c;//b:d c:初始值signed main()
{ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);cin>>t;while(t--){cin>>n>>b>>c;if(b==0&&n>c+2){cout<<-1<<endl;continue;}else if(b==0){if(c<=n-1){cout<<n-1<<endl;}else{cout<<n<<endl;}}else{if(c>n-1){cout<<n<<endl;}else{cout<<n-((n-1-c)/b)-1<<endl;}} }return 0;
}
C

代码:
#include<iostream>
using namespace std;
#define int long long int t,ans;
int n,m,v;
int a[1000010],pre[1000010],las[1000010],presum[1000010];int ef(int l,int r,int t){int mid,aa=-1;while(l<=r){mid=l+r>>1;if(las[mid]>=t){aa=mid;l=mid+1;}else{r=mid-1;}}return aa;
}signed main()
{cin>>t;while(t--){ans=0;cin>>n>>m>>v;for(int i=1;i<=n;i++){cin>>a[i];presum[i]=presum[i-1]+a[i];}int g=0;for(int i=1;i<=n;i++){g+=a[i];if(g>=v){pre[i]=pre[i-1]+1;g=0;}else{pre[i]=pre[i-1];}}g=0;for(int i=n;i>=1;i--){g+=a[i];if(g>=v){las[i]=las[i+1]+1;g=0;}else{las[i]=las[i+1];}}int flag=0;for(int i=1;i<=n;i++){int g=m-pre[i-1];int q=ef(i,n+1,g);
// cout<<q<<endl;if(q==-1)continue;flag=1;ans=max(ans,presum[q-1]-presum[i-1]);}if(flag==0){cout<<-1<<endl;}else{cout<<ans<<endl;}}return 0;
}
D
题目思路:首先,Alice只能从小的一步步往大的跳。我们可以考虑一种递推思路(也有点像dp?)画个图说明:

大概就是说,从1~n递推,每一位可以从其前面比它大的数得到。其实理解这个点之后题目就迎刃而解了。当然,记录输出的话,每一位记录一下其前面一个的字母和编号即可。用个递归输出。
代码:
#include<iostream>
using namespace std;
typedef pair<char,int>PII;int t,cnt;
int n;
int q[1000010],k[1000010],j[1000010];
PII ds[1000010];
pair<int,int>qm,km,jm;//qkj最大值的位置和大小;void print(int i){cnt++;if(ds[i].second==1){cout<<cnt<<endl;cout<<ds[i].first<<" "<<i<<endl;return ;}print(ds[i].second);cout<<ds[i].first<<" "<<i<<endl;
}int main()
{cin>>t;while(t--){cnt=0;cin>>n;ds[n].second=0;for(int i=1;i<=n;i++){cin>>q[i];}for(int i=1;i<=n;i++){cin>>k[i];}for(int i=1;i<=n;i++){cin>>j[i];}qm={1,q[1]};km={1,k[1]};jm={1,j[1]};for(int i=2;i<=n;i++){if(q[i]<qm.second){ds[i]={'q',qm.first};if(k[i]>km.second)km={i,k[i]};if(j[i]>jm.second)jm={i,j[i]};}else if(k[i]<km.second){ds[i]={'k',km.first};if(q[i]>qm.second)qm={i,q[i]};if(j[i]>jm.second)jm={i,j[i]};}else if(j[i]<jm.second){ds[i]={'j',jm.first};if(q[i]>qm.second)qm={i,q[i]};if(k[i]>km.second)km={i,k[i]};}}if(ds[n].second==0){cout<<"NO\n";}else{cout<<"YES\n";print(n);}}return 0;
}/*
3
1 2 3
1 3 2
1 2 3
*/
//同志仍需努力*****
相关文章:
CF986 div2 ABCD补题
//***不知道在不在进步 A 注意点:其实这个暴力就行,但有个限制,就是最多走100遍如果不到那就一定到不了。其实我感觉10遍就可以了,但WA了。不管怎么说,100遍不超时而且稳对。 代码: #include<bits/s…...
Ubuntu 22.04 上安装和使用 ComfyUI
在 Ubuntu 22.04 上安装和使用 ComfyUI可以按照以下步骤进行: 安装前的准备 确保系统更新到最新 打开终端并运行: sudo apt update sudo apt upgrade安装 Python 3 和 pip 如果没有安装 Python 3 和 pip,可以通过以下命令进行安装࿱…...
用户中心项目教程(一)--Ant design pro初始化的学习和使用
文章目录 1.项目定位2.项目开发流程3.需求分析4.技术选型5.Ant design pro初始化5.1快速使用5.2初始化过程 6.项目依赖的报错处理6.1项目出现的问题6.2怎么查看问题6.3怎么解决报错6.4关于pnpm的安装 7.项目启动和运行7.1项目如何启动7.2双击跳转7.3登录和注册7.4页面分析7.5关…...
分频器code
理论学习 数字电路中时钟占有非常重要的地位。时间的计算都依靠时钟信号作为基本单元。一般而言,一块板子只有一个晶振,即只有一种频率的时钟,但是数字系统中,经常需要对基准时钟进行不同倍数的分频,进而得到各模块所需…...
C#中字符串方法
字符串属性:Lenght 长度比最大索引大1 string str "frerfgd"; 1.可以通过索引,获取字符串中的某一个字符,下标“0,1.......” Console.WriteLine(str[0]);//f Console.WriteLine(str[1]);//r //Console.WriteLine(s…...
Python毕业设计选题:基于django+vue的二手电子设备交易平台设计与开发
开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 管理员登录 管理员功能界面 用户管理 设备类型管理 设备信息管理 系统首页 设备信息…...
【愚公系列】《微信小程序与云开发从入门到实践》059-迷你商城小程序的开发(加入购物车与创建订单功能开发)
标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度…...
Mac Android studio :gradle 配置、代理设置、及各种环境变量配置;
mac 安装 AS,最烦人的就是这些配置了(吐槽一下:这软件真是垃圾的一批,同样的代码换了电脑就没法用,比 vscode 甚至比低评分的xcode还差劲!) --------------------- 一、 gradle 下载及环境变量…...
unity——Preject3——开始界面拼面板
目录 1.创建panel,去掉panel自带的image,自己加一个image,使用锚点分配好 2.锚点(快捷键点击后 ALTShift) 锚点是什么? 锚点的实际例子 例子1:固定在父容器的中心 例子2:对齐到…...
【达梦数据库(Oracle模式)】如何将视图中的数据导出
在某些情况下,我们需要将生产环境某个模式下的数据导入到开发电脑中,因为正式环境无法连接外网数据。 方式一:将视图查询出来,然后右键导出所有查询结果(不推荐) 优点:方便快捷 缺点࿱…...
GB44495-2024 汽车整车信息安全技术要求 - V2X部分前置要求
背景 GB 44495-2024《汽车整车信息安全技术要求》中关于V2X(车与外界通信)的部分,主要关注于通信安全要求,旨在确保车辆在与外部设备进行数据交互时的信息安全。其测试大致可分为消息层(数据无异常)、应用…...
FastAPI 应用的容器化与 Docker 部署:提升性能与可扩展性
FastAPI 应用的容器化与 Docker 部署:提升性能与可扩展性 目录 🐳 使用 Docker 容器化 FastAPI 应用⚙️ 使用 Docker Compose 管理多个服务的部署🚀 在 Docker 容器中部署与运行 FastAPI 应用 1. 🐳 使用 Docker 容器化 FastAPI…...
QT入门的一些吐槽
QT入门的一些吐槽 看了网上的一些介绍QT的课程,看了一些讲述qt的书籍,然而再想自己做一个项目的时候,却发现我好像什么都不会,QT对我来说就是一个黑盒子。 我只会: 使用QT Creator创建一个项目,再UI文件中…...
4.Spring AI Prompt:与大模型进行有效沟通
1.什么是提示词 在人工智能领域,提示词(Prompt)扮演着至关重要的角色,它宛如一把精准的钥匙,为 AI 大模型开启理解之门。作为向模型输入的关键信息或引导性语句,提示词能够助力模型迅速洞悉问题需求&#…...
深入内核讲明白Android Binder【二】
深入内核讲明白Android Binder【二】 前言一、Binder通信内核源码整体思路概述1. 客户端向服务端发送数据流程概述1.1 binder_ref1.2 binder_node1.3 binder_proc1.4 binder_thread 2. 服务端的binder_node是什么时候被创建的呢?2.1 Binder驱动程序为服务创建binder…...
Python基于Django的图像去雾算法研究和系统实现(附源码,文档说明)
博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇dz…...
TCP 连接状态标识 | SYN, FIN, ACK, PSH, RST, URG
注:本文为“TCP 连接状态标识”相关文章合辑。 TCP 的状态:SYN, FIN, ACK, PSH, RST, URG 简介及 ACK 确认机制 llzhang_fly 于 2020-09-19 05:25:26 发布 1、TCP 的状态 FLAGS 字段状态 在 TCP 层,有个 FLAGS 字段,这个字段有…...
WXML模版语法-事件绑定
知识点1:什么是事件 事件是渲染层到逻辑层的通讯方式。通过事件可以将用户在渲染层产生的行为,反馈到逻辑层进行业务的处理。 知识点2:小程序中常用的事件 类型绑定方式事件描述tapbindtap或bind:tap手指触摸后马上离开,类似于…...
楚慧杯Web
WEB1 计算器 import requests rrequests.session() data{"answer":0} url"" for i in range(30):if i0:rrequests.get(url)dr.textdd.split(":")[22][1:].split("<br>")[0]data["answer"]str(eval(d))print(eval(d)…...
工商业储能电站能量管理本地系统及多站点云平台
一、储能站就地监控 Acre1-2000MG储能能量管理系统是针对工商业储能电站研制的本地化能量管理系统,可实现了储能电站的数据采集、数据处理、数据存储、数据查询与分析、可视化监控、报警管理、统计报表、策略管理、历史曲线等功能。其中策略管理,支持多…...
【紧急预警】Lindy衰减临界点已提前至第8.3个月!2024最新《营销自动化寿命健康度白皮书》限时开放前500份
更多请点击: https://kaifayun.com 第一章:Lindy衰减临界点的理论重构与实证突破 Lindy效应传统上描述“越老越长寿”的非线性生存规律,但其在现代软件系统、开源生态与协议层技术栈中的适用边界正遭遇结构性挑战。本文首次将Lindy模型从静…...
CUDA并行计算与FSR框架优化实践
1. CUDA并行计算与FSR框架概述在GPU加速计算领域,CUDA(Compute Unified Device Architecture)作为NVIDIA推出的并行计算平台和编程模型,已经成为高性能计算的事实标准。其核心设计理念是将计算任务分解为网格(Grid&…...
HarmonyOS 6学习:解决图片放大后无法移动至边缘的matrix4矩阵变换技巧
从"卡在中间"到"自由拖拽":一次完整的图片缩放平移边界问题攻关在HarmonyOS 6应用开发中,我最近遇到了一个看似简单却让人头疼的图片查看器问题:用户双指放大图片后,想要拖动查看边缘细节,却发现图…...
LoRa物联网与动态基线算法在养殖体温监测中的实战应用
1. 项目概述:为什么我们需要一个智能体温监测系统?在规模化养殖场里干了十几年,我见过太多因为体温异常没被及时发现而导致的损失。一头育肥猪突然不吃食,等饲养员第二天巡栏发现时,可能已经高烧好几天,继发…...
ModernWMS核心功能详解:从ASN入库到Dispatch出库的完整工作流
ModernWMS核心功能详解:从ASN入库到Dispatch出库的完整工作流 【免费下载链接】ModernWMS The open source simple and complete warehouse management system is derived from our many years of experience in implementing erp projects. We stripped the origin…...
用PyTorch复现FactorVAE:一个能同时预测收益和风险的量化模型实战教程
用PyTorch实战FactorVAE:构建收益与风险双预测的量化模型 在量化投资领域,传统线性因子模型正逐渐被非线性机器学习方法所取代。然而金融数据特有的低信噪比特性,使得直接从市场数据中提取有效因子成为一项艰巨挑战。本文将深入探讨如何利用P…...
基于Arduino UNO的真随机数生成与数据持久化在Tambola游戏机中的应用
1. 项目概述:用Arduino UNO打造一台全自动Tambola游戏机如果你玩过或者听说过Tambola(在印度非常流行的游戏,在欧美也叫Bingo或Housie),就知道它的核心玩法是主持人从一个装有数字球的容器中随机抽取号码,玩…...
Unity项目实战:用TriLib插件动态加载FBX模型,5分钟搞定外部资源读取
Unity项目实战:用TriLib插件高效加载外部FBX模型的完整指南在VR展示、产品配置器等需要动态加载用户上传模型的场景中,如何快速实现外部FBX文件的读取是许多Unity开发者面临的挑战。传统的手动导入方式不仅效率低下,更无法满足运行时动态加载…...
观察Taotoken在多模型聚合调用下的路由与失败重试效果
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 观察Taotoken在多模型聚合调用下的路由与失败重试效果 在构建依赖大模型能力的应用时,服务的稳定性是开发者关注的核心…...
CI/CD流水线中的幽灵依赖——DeepSeek项目92%存在未声明的transitive risk,你中招了吗?
更多请点击: https://intelliparadigm.com 第一章:CI/CD流水线中的幽灵依赖——DeepSeek项目92%存在未声明的transitive risk,你中招了吗? 在现代CI/CD实践中,开发者常误以为 package.json 或 requirements.txt 中显式…...
