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

C. Turtle and an Incomplete Sequence

思路:首先如果都是-1的话,我们可以输出1 2循环,否则。

首先处理首尾的连续-1串,这个也很好处理,最后我们处理两个非-1之间的-1串。

对于左边的数a[l]和右边的数a[r]:

如果a[l] > a[r],那么就处理a[l + 1],让左边的数变小,否则处理a[r - 1]。

代码:

void solve() {int n;std::cin >> n;std::vector<int> a(n);for (int i = 0; i < n; i++) {std::cin >> a[i];}if (std::count(a.begin(), a.end(), -1) == n) {for (int i = 0; i < n; i++) {a[i] = i % 2 + 1;}} else {for (int i = 0, j = -1; i <= n; i++) {if (i == n || a[i] != -1) {if (j == -1) {for (int k = i - 1; k >= 0; k--) {a[k] = a[k + 1] == 1 ? 2 : a[k + 1] / 2;}} else if (i == n) {for (int k = j + 1; k < n; k++) {a[k] = a[k - 1] == 1 ? 2 : a[k - 1] / 2;}} else {int l = j, r = i;while (l + 1 < r) {if (a[l] > a[r]) {a[l + 1] = a[l] == 1 ? 2 : a[l] / 2;l++;} else {a[r - 1] = a[r] == 1 ? 2 : a[r] / 2;r--;}}if (a[l] != a[r] / 2 && a[r] != a[l] / 2) {std::cout << -1 << "\n";return;}}j = i;}}}for (int i = 0; i < n; i++) {std::cout << a[i] << " \n"[i == n - 1];}
}

相关文章:

  • 一维时间序列信号的改进小波降噪方法(MATLAB R2021B)
  • 【记录43】el-table @selection-change 数据回显、条件约束、历史回显清除
  • 【AVL Design Explorer DOE】
  • QT系列教程(5) 模态对话框消息传递
  • C语言入门编程:开启编程之旅的探索与实践
  • dockers安装mysql
  • docker 快速搭建django项目环境(DockerFile)文件基础搭建
  • 408数据结构-图的存储与基本操作 自学知识点整理
  • 自学成才Flutter 弹性布局、线性布局
  • NFT Insider #132:Solana链上NFT销售总额达到55.49亿美元, The Sandbox成立DAO
  • 【并查集】专题练习
  • 复习leetcode第二题:两数相加
  • Pytorch入门需要达到的效果
  • 【教学类-60-01】彩色消划掉01(四个数字,X*Y宫格)
  • Linux - 文件管理高级1
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • ES6 ...操作符
  • ES6简单总结(搭配简单的讲解和小案例)
  • ES6系列(二)变量的解构赋值
  • JAVA 学习IO流
  • Js基础知识(一) - 变量
  • js中forEach回调同异步问题
  • JS专题之继承
  • React-flux杂记
  • windows下使用nginx调试简介
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • ​一些不规范的GTID使用场景
  • #android不同版本废弃api,新api。
  • #Datawhale AI夏令营第4期#AIGC文生图方向复盘
  • #if和#ifdef区别
  • #每天一道面试题# 什么是MySQL的回表查询
  • #图像处理
  • (+4)2.2UML建模图
  • (4)(4.6) Triducer
  • (ros//EnvironmentVariables)ros环境变量
  • (备份) esp32 GPIO
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)springboot教学评价 毕业设计 641310
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (佳作)两轮平衡小车(原理图、PCB、程序源码、BOM等)
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (亲测有效)推荐2024最新的免费漫画软件app,无广告,聚合全网资源!
  • (三)docker:Dockerfile构建容器运行jar包
  • (一)、python程序--模拟电脑鼠走迷宫
  • (一)基于IDEA的JAVA基础1
  • (一)基于IDEA的JAVA基础10
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • .NET Core 中插件式开发实现
  • .NET 给NuGet包添加Readme
  • .NET 指南:抽象化实现的基类
  • .Net环境下的缓存技术介绍