AT_abc372_d.[ABC372D] Buildings

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

这里有 NN 栋房子,从 11 到 NN 依次编号。它们按照顺序排成一排。第 i(1≤i≤N)i(1\le i\le N) 的房子的高度为 HiH_i。

对于每一个 i=1,2,…,Ni=1,2,\dots,N,找到满足以下条件的整数 j(i<j≤N)j(i<j\le N) 的数量:

  • 没有一栋在 ii 和 jj 之间的房子比 jj 要高。

输入格式

第一行,一个整数 NN。

第二行,有 NN 个整数,表示每栋房子的高度。

输出格式

对于每一个 i=1,2,…,ni=1,2,\dots,n,令 cic_i 为满足条件的 jj 的数量。输出 NN 个整数 c1,c2,…,cNc_1,c_2,\dots,c_N。

样例 1 解释

当 i=1i=1 时,满足条件的 jj 有 2,32,3 和 55,一共 33 个。(在第 11 栋房子和第 44 栋房子之间,房子 33 比房子 44 高,所以 j=4j=4 不满足条件。)所以第一个数输出 33。

输入输出样例

  • 输入#1

    5
    2 1 4 3 5

    输出#1

    3 2 2 1 0
  • 输入#2

    4
    1 2 3 4

    输出#2

    3 2 1 0
  • 输入#3

    10
    1 9 6 5 2 7 10 4 8 3

    输出#3

    2 3 3 3 2 1 2 1 1 0

说明/提示

  • 1≤N≤2×1051\le N\le 2\times 10^5
  • 1≤Hi≤N1\le H_i\le N
  • Hi≠Hj(i≠j)H_i\not=H_j(i\not= j)
  • 所有输入都为整数

输入解题思路,AI测评打分。不知道怎么写?

首页