Educational Codeforces Round 90 (Rated for Div. 2) C. Pluses and Minuses (1300)

C. Pluses and Minuses
题意:
给一个字符串s,有如下代码:

res = 0
for init = 0 to inf
    cur = init
    ok = true
    for i = 1 to |s|
        res = res + 1
        if s[i] == '+'
            cur = cur + 1
        else
            cur = cur - 1
        if cur < 0
            ok = false
            break
    if ok
        break

求res最后的值

思路:
跑一遍循环,依次找前缀和为 -1、-2、-3、……时的情况,答案要加上当时的结点值,最后再加上s的长度就行了
(其实就是把题目给的代码优化一下)

代码附:

#pragma GCC optimize("Ofast","inline","-ffast-math")
#pragma GCC target("avx,sse2,sse3,sse4,mmx")
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N = 2e5+10;
signed main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    int t;
    cin>>t;
    string ss;
    while(t--)
    {
        cin>>ss;
        int now=-1,ans=0,sum=0;
        for(int i=0;ss[i];++i)
        {
            if(ss[i]=='-')sum--;
            else sum++;
            if(sum==now)
            {
                now--;
                ans+=i+1;
            }
        }ans+=ss.length();
        cout<<ans<<endl;
    }
    return 0;
}

热门文章

暂无图片
编程学习 ·

php-fpm 服务

系统:centos 7版本:php-5.6.9安装目录:/Data/app/php/cd etc/mv php-fpm.conf.default php-fpm.confsbin/php-fpm 「 php-fpm 启动 & 无php-fpm.pid 」 ps -ef | grep php-fpmroot 23536 1 0 20:36 ? 00:00:00 php-fpm: master process (/Data/app/…
暂无图片
编程学习 ·

从入门到删库跑路的过程

数据库简介数据库的发展史萌芽阶段:文件系统使用磁盘文件来存储数据初级阶段:第一代数据库出现了网状模型、层次模型的数据库中级阶段:第二代数据库关系型数据库和结构化查询语言高级阶段:新一代数据库关系-对象 型数据库NoSQL非关系数据库:Not Only SQL 数据库管理系统 数…
暂无图片
编程学习 ·

Centos7下redis6.0.5的详细安装步骤

Centos7下redis6.0.5的详细安装步骤: 0、官网浏览,安装wget 1、打开 https://redis.io/download,浏览最新的redis信息。 2、安装wget:执行命令:yum install wget -y 备注:-y的意思是yes 1、wget获得redis安装包 执行: wget http://download.redis.io/releases/redis-6.0…
暂无图片
编程学习 ·

Java使用poi将office文件转为html

一、前言 功能需求:上传office文档,并提供文件在线预览。 解决方案:使用Aspose.cells.jar包,将文档转换为pdf格式; 使用libreOffice,将文档转换为pdf格式; 使用poi将文档转换为html格式。方案一:通过Aspose的方式,该功能是付费版,需要破解,所以是能抛弃。 方案二,使…
暂无图片
编程学习 ·

js队列实现优先级插入的方法

队列是先进先出.在医院中排队的时候就是一个队列,最先排队的人,会先获得医生的治疗,这就是先进先出的队列但是也有例外,当医院来了一位急救病人的时候,这个队列就需要做一些改进,改为最小优先队列,这样可以让急救病人首先获得医生的救治,从而保住性命.现在用js来实现一个优先队…
暂无图片
编程学习 ·

用自行实现的优先队列进行四字成语汉字频率统计

文章目录背景构建最大堆代码实现测试通过最大堆实现优先队列成语汉字频率统计案例统计四字成语文件中的汉字出现频率的前5位项目结构汉字频率的类优先队列测试类成语汉字统计主程序 背景 在《自已做动画及编写程序搞清楚最大堆的实现原理》这篇文章中,我们通过动图分析编 码自…
暂无图片
编程学习 ·

设计模式学习——单例模式

一、单例模式的概念1.1 概念单例模式是指 确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。单例模式的特点是隐藏其所有的构造方法。属于创建型模式。1.2 单例模式的适用场景确保任何情况下都绝对只有一个实例。例如ServletContext、ServletConfig、Applicat…
暂无图片
编程学习 ·

Strategies For Pre-Training Graph Neural Networks

Paper : STRATEGIES FOR PRE-TRAINING GRAPH NEURAL NETWORKS Code : official摘要 作者解决的问题是如何预训练一个GNN网络,保证预训练的结果在具体数据集中finetune不会negative transfer 的现象。作者在文中并没有细致的解释为什么GNN上进行transfer learning 会更难,这个…
暂无图片
编程学习 ·

webrtc 实现web端对端视频

https://huangxiaoguo.blog.csdn.net/article/details/104229233https://blog.csdn.net/lbc2100/article/details/44563665https://www.oschina.net/question/156697_172887
暂无图片
编程学习 ·

【游记】2020联合省选

说在前面 今年的省选是在本校考的,非常幸运。但俗话说得好,祸福相依。 day  0\tt day\;0day0 最后一个突击冲刺的夜晚,天上一颗星星也没有。机房里是几个年轻人,其中的一位正在复习 NTT\tt NTTNTT ,他还没有意识到将要到来的考试是个灭顶之灾。 我们的教练显然并不相信临…
暂无图片
编程学习 ·

Codeforces 1295D Same GCDs(欧拉函数)

传送门题意:给定,若,求有多少个x满足题解:如果满足gcd相同则x必须为gcd(a,m)的倍数,设,则若,有多个w满足。因为d是最大公因数所以。到这里(凭借丰富的骗分经验?)就可以直接猜一波答案是phi(v)了。所以求个gcd再求个欧拉函数就完事儿。一开始欧拉函数没写好还T了一发.…
暂无图片
编程学习 ·

一些CTF 做题的tricks

一些CTF 做题的tricks,东拼西凑放到这里,方便查找 任意文件读取路径汇总任意文件读取漏洞和文件包含漏洞的表现相似,但是任意文件读取不能getshell,可以通过尝试读取相对路径的脚本文件,比如/read.php?file=index.php,如果可以读取到文件源码,说明是文件读取,如果不能…
暂无图片
编程学习 ·

在使用R和Rstdio的常见问题

在Rstdio里无法画图有两种方法:一是使用代码 dev.new() 新建一个绘图窗口(我觉得这个方法好,因为在我的plots窗口画出来的图比例是变形的);二是换一个系统缓存目录,详细教程可以自行在网上寻找。在R里无法安装包可以像上面的方法二一样,换个缓存目录,或者在缓存目录里找…
暂无图片
编程学习 ·

cpu寻址问题

20根地址线,16根数据线,cpu按字节编址和按字编址的寻址范围,分别是1M和512k,但是16根数据线,表明一次向存储单元读写位数16位,那为什么按字编址会是512k而不是1M呢,请解答一下,谢谢
暂无图片
编程学习 ·

jvm垃圾收集算法以垃圾收集器简介

jvm垃圾收集算法以垃圾收集器简介 每天多学一点点~ 话不多说,这就开始吧… 文章目录jvm垃圾收集算法以垃圾收集器简介1.前言2.内存模型判断机制3.垃圾收集算法3.1 分代收集理论3.2 标记-复制算法3.3 标记-清除算法3.4 标记-整理算法4.常用的垃圾收集器4.1 Serial收集器(-XX:+U…
暂无图片
编程学习 ·

虚拟养老院,新型养老模式,究竟有什么作用呢?-新导智能

提到“虚拟养老院”很多人是不是榜首想到的是好像黑客帝国相同的“虚拟现实”,难道虚拟养老院是把老人冷冻催眠,然后让他们在-个虚拟的精力世界里边实现养老?其实,虚拟养老院没有这么夸大,它只是基于“居家养老”理念提出的一种利用现代化通讯和服务体系建立的养老模式。在…
暂无图片
编程学习 ·

HTTP Header (请求头&响应头)

1. 关于HTTP消息头HTTP消息头是在,客户端请求(Request)或服务器响应(Response)时传递的,位请求或响应的第一行,HTTP消息体(请求或响应的内容)是其后传输。HTTP消息头,以明文的字符串格式传送,是以冒号分隔的键/值对,如:Accept-Charset: utf-8,每一个消息头最后以…