Ethflow Round 1 (Codeforces Round 1001, Div. 1 + Div. 2)(前三题)

A. String

翻译:

        给你一个长度为 n 的字符串 s,其中包含 0 和/或 1。在一次操作中,您可以从 s 中选择一个非空的子序列 t,使得 t 中任何两个相邻的字符都是不同的。然后,翻转 t 中的每个字符(0 变为 1,1 变为 0)。例如,如果 s = \underline{0}0\underline{101}t=s_{1}s_{3}s_{4}s_{5}=0101,操作后,s
 变为 \underline{1}0\underline{010}

        计算将 s 中的所有字符变为 0 所需的最少操作次数。

        回想一下,对于字符串 s=s_{1}s_{2}...s_{n} 来说,任何满足1\leq i_{1}<i_{2}...<i_{k}\leq n的字符串 t=s_{i_{1}}s_{i_{2}}...s_{i_{k}}(k\geq 1)都是 s 的子序列。

思路:

        对于字符串s对字符1进行单独反转最赚

实现:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;void solve(){string s;cin>>s;int ans = 0;for (char i:s){ans+=i=='1';}cout<<ans<<endl;
}int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 不使用科学计数法// cout<<fixed;// 中间填保留几位小数,不填默认// cout.precision();int t;cin>>t;while (t--) solve();
}

B. Clockwork

 翻译:

        有一串 n 个排成一行的时钟,其中第 i 个时钟的初始时间为 ai。在每一秒钟内,依次发生以下情况:

  • 每个时钟的时间减少 1。如果任何时钟的时间为 0,您就会立即输掉。
  • 您可以选择移动到邻近的时钟,或者留在当前所在的时钟上。
  • 您可以将您所在时钟的时间重置回初始值 a_{i}

        请注意,上述事件是按顺序发生的。如果某个时钟的时间在某一秒内为 0,即使您可以移动到该时钟并在该秒内重置其时间,您仍然会输。

        您可以从任何时钟开始。确定是否有可能无限期地继续这个过程而不会输。

思路:

要让过程永续下去必须要走过每个点,判断是否存在一个点 i 会在以该点为起点,向左来回或向右来回时消失,判断条件为i<=2*max(i-1,n-i)。

实现:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;void solve(){int n;  cin>>n;vector<int> a(n+1);for (int i=1;i<=n;i++){cin>>a[i];} for (int i=1;i<=n;i++){if (a[i]<=2*max(i-1,n-i)){cout<<"NO"<<endl;return;}}cout<<"YES"<<endl;
}int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 不使用科学计数法// cout<<fixed;// 中间填保留几位小数,不填默认// cout.precision();int t;cin>>t;while (t--) solve();
}

C. Cirno and Operations

 翻译:

        Cirno 有一个长度为 n 的序列 a。除非 a 的当前长度为 1,否则她可以执行以下两个操作中的任意一个(可能是 0 次):

  • 逆转序列。形式上,[a_{1},a_{2},...,a_{n}]在操作后变成 [a_{n},a_{n-1},...,a_{1}]
  • 用差分序列替换序列。形式上,[a_{1},a_{2},...,a_{n}] 在运算后变成 [a_{2}-a_{1},a_{3}-a_{2},...,a_{n}-a_{n-1}]

        求所有运算后 a 的最大可能和。

思路:

        dfs(tmp)为当前序列tmp的最大值,tmp可能会有重复计算的情况,使用memo记忆化

实现:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;void solve(){ll n;  cin>>n;vector<ll> a(n);for (ll i=0;i<n;i++) cin>>a[i];// 答案 ll ans = LLONG_MIN;// 记忆化map<vector<ll>,ll> memo;// 求当前tmp的和auto dfs = [&](auto&& dfs,vector<ll> tmp)->void{ll ssize = tmp.size();if (ssize==1){ans = max(ans,1ll*tmp[0]);return;}//该状态求过,map对于未定义的int默认为0if (memo[tmp]) return;memo[tmp]=1;// tmp的求和ll now = tmp[0];vector<ll> now_tmp(tmp.begin(),tmp.end());// 反转tmpreverse(tmp.begin(),tmp.end());// a1为tmp反转后的差分数组,a2为tmp的差分数组vector<ll> a1(ssize-1),a2(ssize-1);for (ll i=1;i<ssize;i++){a1[i-1] = tmp[i]-tmp[i-1];a2[i-1] = now_tmp[i]-now_tmp[i-1];now+=now_tmp[i];}// 更新答案ans = max({ans,now,tmp[ssize-1]-tmp[0],tmp[0]-tmp[ssize-1]});dfs(dfs,a1);dfs(dfs,a2);};dfs(dfs,a);cout<<ans<<endl;
}int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 不使用科学计数法// cout<<fixed;// 中间填保留几位小数,不填默认// cout.precision();ll t;cin>>t;while (t--) solve();
}

bb空间

有建议可以评论,我会积极改进qwq。

话说爬虫前景如何?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/69346.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图漾Halcon版本SDK使用教程【V1.1.0新版本】

1.下载并安装 Halcon 1.1 下载Halcon软件 在 Halcon 官网(https://www.mvtec.com/downloads) 下载 Halcon (Windows 版) 安装包&#xff0c;并根据官方文档安装 Halcon&#xff0c;下载HALCON24.11Progress-Steady。 1.2 安装Halcon 1.解压HALCON 24.11.1.0的安装包压缩文件…

VS C++ 配置OPENCV环境

VS C 配置OPENCV环境 1.下载opencv2.安装环境3.opencv环境4.VS配置opencv环境5.EXE执行文件路径的环境lib和dll需要根据是debug还是release环境来区分使用哪个 6.Windows环境 1.下载opencv 链接: link 2.安装环境 双击运行即可 3.opencv环境 include文件路径:opencv\build\…

SpringBoot源码解析(八):Bean工厂接口体系

SpringBoot源码系列文章 SpringBoot源码解析(一)&#xff1a;SpringApplication构造方法 SpringBoot源码解析(二)&#xff1a;引导上下文DefaultBootstrapContext SpringBoot源码解析(三)&#xff1a;启动开始阶段 SpringBoot源码解析(四)&#xff1a;解析应用参数args Sp…

Android实训九 数据存储和访问

实训9 数据存储和访问 一、【实训目的】 1、 SharedPreferences存储数据; 2、 借助Java的I/O体系实现文件的存储&#xff0c; 3、使用Android内置的轻量级数据库SQLite存储数据; 二、【实训内容】 1、实现下图所示的界面&#xff0c;实现以下功能&#xff1a; 1&#xff…

python3+TensorFlow 2.x(三)手写数字识别

目录 代码实现 模型解析&#xff1a; 1、加载 MNIST 数据集&#xff1a; 2、数据预处理&#xff1a; 3、构建神经网络模型&#xff1a; 4、编译模型&#xff1a; 5、训练模型&#xff1a; 6、评估模型&#xff1a; 7、预测和可视化结果&#xff1a; 输出结果&#xff…

Queries Acceleration -Tuning- Tuning Execution 学习笔记

1 Adjustment of RuntimeFilter Wait Time 1.1 Case: Too Short RuntimeFilter Wait Time 1.1.1 没有看懂,好像是等待时间过小也会导致性能下降 1.1.2 set runtime_filter_wait_time_ms = 3000; 2 Data Skew Handling 2.1 Case 1: Bucket Data Skew Leading to Suboptimal …

Python3 OS模块中的文件/目录方法说明十三

一. 简介 前面文章简单学习了 Python3 中 OS模块中的文件/目录的部分函数。 本文继续来学习 OS 模块中文件、目录的操作方法&#xff1a;os.rmdir() 方法、os.stat() 方法。 二. Python3 OS模块中的文件/目录方法说明十三 1. os.rmdir() 方法 os.rmdir() 方法用于删除指定路…

Ubuntu 顶部状态栏 配置,gnu扩展程序

顶部状态栏 默认没有配置、隐藏的地方 安装使用Hide Top Bar 或Just Perfection等进行配置 1 安装 sudo apt install gnome-shell-extension-manager2 打开 安装的“扩展管理器” 3. 对顶部状态栏进行配置 使用Hide Top Bar 智能隐藏&#xff0c;或者使用Just Perfection 直…

spark运行流程

spark运行流程 任务提交后&#xff0c;先启动 Driver 程序随后 Driver 向集群管理器注册应用程序集群管理器根据此任务的配置文件分配 Executor 并启动Driver 开始执行 main 函数&#xff0c;Spark 查询为懒执行&#xff0c;当执行到 Action 算子时开始反向推 算&#xff0c;根…

Formality:时序变换(二)(不可读寄存器移除)

相关阅读 Formalityhttps://blog.csdn.net/weixin_45791458/category_12841971.html?spm1001.2014.3001.5482 一、引言 时序变换在Design Compiler的首次综合和增量综合中都可能发生&#xff0c;它们包括&#xff1a;时钟门控(Clock Gating)、寄存器合并(Register Merging)、…

QGIS3.34绿色版更新

我打包的QGIS3.34在实际工作中方便了很多初次接触GIS的朋友&#xff0c;感到十分欣慰&#xff01;但由于初次推出也发现了一些问题&#xff0c;本次对该版本进行了一个更新&#xff01; 还是秉承咱一贯理念&#xff0c;方便您使用也方便您不用&#xff01;该工具还是被打包为绿…

寒假1.26

题解 web&#xff1a;[极客大挑战 2019]Havefun 打开是一个猫猫的图片 查看源代码 就是一个简单的get传参&#xff0c;直接在url后面输入catdog即可 有点水&#xff0c;再来一题 [极客大挑战 2019]LoveSQL 熟悉的界面&#xff0c;不熟悉的注入 尝试上次的方法&#xff0c;注…

Python GUI 开发 | Qt Designer — 工具介绍

关注这个框架的其他相关笔记&#xff1a;Python GUI 开发 | PySide6 & PyQt6 学习手册-CSDN博客 Qt Designer 即 Qt 设计师&#xff0c;是一个强大、灵活的可视化 GUI 设计工具&#xff0c;可以帮助用户加快开发 PySide6 程序的速度。 Qt Designer 是专门用来制作 PySide6…

基于回归分析法的光伏发电系统最大功率计算simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于回归分析法的光伏发电系统最大功率计算simulink建模与仿真。选择回归法进行最大功率点的追踪&#xff0c;使用光强和温度作为影响因素&#xff0c;电压作为输出进行建模。…

嵌入式蓝桥杯电子赛嵌入式(第14届国赛真题)总结

打开systic 生成工程编译查看是否有问题同时打开对应需要的文档 修改名称的要求 5.简单浏览赛题 选择题&#xff0c;跟单片机有关的可以查相关手册 答题顺序 先从显示开始看 1,2 所以先打开PA1的定时器这次选TIM2 从模式、TI2FP2二通道、内部时钟、1通道设为直接2通道设置…

SuperAGI - 构建、管理和运行 AI Agent

文章目录 一、关于 SuperAGI&#x1f4a1;特点&#x1f6e0; 工具包 二、⚙️安装☁️SuperAGI云&#x1f5a5;️本地&#x1f300; Digital Ocean 三、架构1、SuperAGI 架构2、代理架构3、代理工作流架构4、Tools 架构5、ER图 一、关于 SuperAGI SuperAGI 一个开发优先的开源…

FLTK - FLTK1.4.1 - demo - adjuster.exe

文章目录 FLTK - FLTK1.4.1 - demo - adjuster.exe概述笔记根据代码&#xff0c;用fluid重建一个adjuster.fl 备注 - fluid生成的代码作为参考代码好了修改后可用的代码END FLTK - FLTK1.4.1 - demo - adjuster.exe 概述 想过一遍 FLTK1.4.1的demo和测试工程&#xff0c;工程…

本地大模型编程实战(03)语义检索(2)

文章目录 准备按批次嵌入加载csv文件&#xff0c;分割文档并嵌入测试嵌入效果总结代码 上一篇文章&#xff1a; 本地大模型编程实战(02)语义检索(1) 详细介绍了如何使用 langchain 实现语义检索&#xff0c;为了演示方便&#xff0c;使用的是 langchain 提供的内存数据库。 在实…

以太网详解(六)OSI 七层模型

文章目录 OSI : Open System Interconnect&#xff08;Reference Model&#xff09;第七层&#xff1a;应用层&#xff08;Application&#xff09;第六层&#xff1a;表示层&#xff08;Presentation&#xff09;第五层&#xff1a;会话层&#xff08;Session&#xff09;第四…

单片机基础模块学习——DS18B20温度传感器芯片

不知道该往哪走的时候&#xff0c;就往前走。 一、DS18B20芯片原理图 该芯片共有三个引脚&#xff0c;分别为 GND——接地引脚DQ——数据通信引脚VDD——正电源 数据通信用到的是1-Wier协议 优点&#xff1a;占用端口少&#xff0c;电路设计方便 同时该协议要求通过上拉电阻…