zoukankan      html  css  js  c++  java
  • 贪婪算法解决单调问题

     

    【题目描述】 
    WZK 最近收到了一个任务。 
    给出一个 n 个数的序列,为 A0,A1,„„,An-1,循环移动 k 位之后,这个序列就变 成了 Ak,Ak+1,„„,An-1,A0,A1,„„,Ak-1。一种优秀的循环移动是,对于任意的 前 i(1<=i<=n)项和都满足不小于零。请给出这个序列优秀循环移动的个数。 
    这道题目当然是很简单啦,但是 WZK 忙着吃小浣熊干脆面,手上油油的写不了程序,于是就麻烦你啦!如果能做到满分,他就会考虑请你吃一包哦~ 
    【输入格式】 
    第一行一个整数 n(1 <= n <= 10^6),表示有 n 个数。 
    第二行 n 个整数,Ai(-1000 <= Ai <= 1000)表示给出的第 i 个数。 
    【输出格式】 一行一个整数,表示优秀循环移动的个数。 
    【样例输入】 
    input#1

    3 
    2 2 1 

    input#2

    4 
    -3 5 1 2 

    【样例输出】 
    output1: 

    3 

    two: 

    2

    然后luogu出在了月赛题里 
    uim在公司里面当秘书,现在有n条消息要告知老板。每条消息有一个好坏度,这会影响老板的心情。告知完一条消息后,老板的心情等于之前老板的心情加上这条消息的好坏度。最开始老板的心情是0,一旦老板心情到了0以下就会勃然大怒,炒了uim的鱿鱼。 
    uim为了不被炒,知道了了这些消息(已经按时间的发生顺序进行了排列)的好坏度,希望研究如何不让老板发怒。 
    uim必须按照时间的发生顺序逐条将消息告知给老板。不过uim可以使用一种叫“倒叙”的手法,例如有n条消息,小a可以从k,k+1,k+2…n,1,2…k-1这种顺序通报。 
    他希望知道,有多少个k,从k开始通报到n然后从1通报到k-1可以让老板不发怒。

  • 相关阅读:
    spring security5.0源码导入idea
    汇编学习笔记(13)
    汇编学习笔记(12)
    汇编学习笔记(11)
    汇编学习笔记(10)-IO端口与指令
    汇编学习笔记(9)-汇编程序的基本语法(NASM)
    汇编学习笔记(8)-IDA+VMware调试MBR
    汇编学习笔记(7)-NASM环境搭建(nasm with vs2017)
    汇编学习笔记(6)-从MASM至NASM
    汇编学习笔记(4)-伪指令(MASM)
  • 原文地址:https://www.cnblogs.com/ljc20020730/p/7358505.html
Copyright © 2011-2022 走看看