zoukankan      html  css  js  c++  java
  • CF722C 摧毁阵法

    摧毁阵法

    (a.cpp 1s/512MB)

    题目描述

    给你一个由n个非负整数组成的数列 (a_1, a_2, ..., a_n)
    你将要一个一个摧毁这个数列中的数。并且,现在给你一个由 1 到 n 组成的序列来告诉你每个数被摧毁的时间顺序。
    每当一个元素被摧毁时,你需要找到这个当前数列中的未被摧毁的数组成的和最大的连续子序列,另外,如果当前剩余的序列是空的的话,最大和就是0。

    输入格式

    第一行包含一个整数n (1 <= n <= 100000) , 代表数列的长度。
    第二行包含n个整数 (a_1, a_2, ..., a_n) ((0 leq a_i leq 10^9))
    第三行包含一个由1到n的整数组成的序列,代表数被摧毁的顺序。

    输出格式

    输出有n行,第i行包含一个整数 —— 在第i个操作已经执行完之后,数列中连续的最大和

    样例

    输入样例
    4
    1 3 2 5
    3 4 1 2
    
    输出样例
    5
    4
    3
    0
    
    样例解释

    第三个元素被破坏了。数组现在是13*5段,最大和5由一个整数5组成。

    第四个元素被摧毁。阵法现在是13**。最大和为4的段由两个整数1 3组成。

    第一个元素被破坏。数组现在是*3**。最大和为3的段包含一个整数3。

    最后一个元素被销毁。此时此数组中没有剩余的有效非空段,因此答案等于0。

    数据范围与提示

    见上文

  • 相关阅读:
    速达开发小组面试题分享下
    NC V6 nchome文件目录及其作用介绍
    GIL 线程池 进程池 同步 异步 阻塞 非阻塞
    线程
    守护进程进程安全
    并发
    22个所见即所得在线 Web 编辑器
    asp.net操纵Oracle存储过程
    JQuery 中each的使用方法
    JQuery实现简单的服务器轮询效果
  • 原文地址:https://www.cnblogs.com/AK-ls/p/14966568.html
Copyright © 2011-2022 走看看