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

分糖果--思维+while判断

1.从左到右只考虑右边一遍,再从右到左考虑左边一遍,相当于左右考虑了

2.然后关键是1遍不一定行,while循环直到成功

https://www.luogu.com.cn/problem/B4091

#include<bits/stdc++.h>
using namespace std;
#define N 100011
typedef  long long ll;
typedef pair<ll,int> pii;
int n,m,k;
ll a[N];
ll b[N];
ll an;
int main() {ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>n;for(int i=0;i<n;i++) cin>>a[i],b[i]=1;while(1){int f=1;for(int i=0;i<n;i++){if(a[(i-1+n)%n]<a[i]&&b[(i-1+n)%n]>=b[i]){b[i]=b[(i-1+n)%n]+1;f=0;}}for(int i=n-1;i>=0;i--){if(a[(i+1)%n]<a[i]&&b[(i+1)%n]>=b[i]){b[i]=max(b[(i+1)%n]+1,b[i]);f=0;}}if(f) break;}for(int i=0;i<n;i++) an+=b[i];cout<<an;return 0;
}

http://www.dtcms.com/a/196206.html

相关文章:

  • CSS- 4.2 相对定位(position: relative)
  • 前端基础之CSS
  • 【001】RenPy打包安卓apk 流程源码级别分析
  • (面试)TCP、UDP协议
  • 手写tomcat:基本功能实现(4)
  • 轻量、优雅、高扩展的事件驱动框架——Hibiscus-Signal
  • Git 版本控制系统入门指南
  • 我的世界模组开发——特征(2)
  • 使用 Vue Tour 封装一个统一的页面引导组件
  • Typescript学习教程,从入门到精通,TypeScript 函数语法知识点及案例代码(5)
  • 六、绘制图片
  • Golang 范型
  • C# WPF .NET Core和.NET5之后引用System.Windows.Forms的解决方案
  • 数据库——SQL约束窗口函数介绍
  • 量化用到的机器学习书籍推荐
  • 广和通L610模块通过AT指令访问服务器方案:嵌赛使用
  • QT6 源(105)篇二:阅读与注释 QAction,给出源代码
  • RJ连接器的未来:它还会是网络连接的主流标准吗?
  • Java-Objects类高效应用的全面指南
  • Vue百日学习计划Day19-20天详细计划-Gemini版
  • 从数据分析到数据可视化:揭开数据背后的故事
  • ArrayList-集合使用
  • 【C语言练习】046. 编写插入排序算法
  • 编译原理实验五:LR语法分析器的控制程序
  • BrepGen中的几何特征组装与文件保存详解 deepwiki occwl OCC包装库
  • 亲测有效!OGG 创建抽取进程报错 OGG-08241,如何解决?
  • gRPC开发指南:Visual Studio 2022 + Vcpkg + Windows全流程配置
  • 深入理解 Java 字节码操作码
  • Rust 数据结构:HashMap
  • 【沉浸式求职学习day42】【算法题:滑动窗口】