CF830B.Cards Sorting

普及/提高-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

Vasily has a deck of cards consisting of n cards. There is an integer on each of the cards, this integer is between 1 and 100 000, inclusive. It is possible that some cards have the same integers on them.

Vasily decided to sort the cards. To do this, he repeatedly takes the top card from the deck, and if the number on it equals the minimum number written on the cards in the deck, then he places the card away. Otherwise, he puts it under the deck and takes the next card from the top, and so on. The process ends as soon as there are no cards in the deck. You can assume that Vasily always knows the minimum number written on some card in the remaining deck, but doesn't know where this card (or these cards) is.

You are to determine the total number of times Vasily takes the top card from the deck.

瓦西里有一副由 nn 张卡片组成的牌堆。每张卡片上写有一个整数,该整数在 11 到 100 000100\,000 之间(含端点)。可能存在多张卡片上写着相同的整数。

瓦西里决定对这些卡片进行排序。为此,他反复执行如下操作:从牌堆顶部取出一张卡片;若该卡片上的数字等于当前牌堆中所有卡片上的最小数字,则将这张卡片移出牌堆;否则,将其放到牌堆底部,再从顶部取出下一张卡片,依此类推。当牌堆中不再有卡片时,该过程结束。你可以假设瓦西里始终知道剩余牌堆中卡片上的最小数字,但并不知道该最小数字所在的卡片(或卡片们)的具体位置。

你需要计算瓦西里总共从牌堆顶部取出了多少次卡片。

输入格式

The first line contains single integer n (1 ≤ n ≤ 100 000) — the number of cards in the deck.

The second line contains a sequence of n integers _a_1, _a_2, ..., a__n (1 ≤ a__i ≤ 100 000), where a__i is the number written on the i-th from top card in the deck.

第一行包含一个整数 nn(1≤n≤100 0001 \leq n \leq 100\,000)—— 表示牌组中卡片的数量。

第二行包含一个由 nn 个整数 a1, a2, ..., ana_1,\,a_2,\,...,\,a_n(1≤ai≤100 0001 \leq a_i \leq 100\,000)组成的序列,其中 aia_i 表示牌组中从上往下数第 ii 张卡片上所写的数字。

输出格式

Print the total number of times Vasily takes the top card from the deck.

输出瓦西里从牌堆顶部取牌的总次数。

输入输出样例

  • 输入#1

    4
    6 3 1 2

    输出#1

    7
  • 输入#2

    1
    1000

    输出#2

    1
  • 输入#3

    7
    3 3 3 3 3 3 3

    输出#3

    7

说明/提示

In the first example Vasily at first looks at the card with number 6 on it, puts it under the deck, then on the card with number 3, puts it under the deck, and then on the card with number 1. He places away the card with 1, because the number written on it is the minimum among the remaining cards. After that the cards from top to bottom are [2, 6, 3]. Then Vasily looks at the top card with number 2 and puts it away. After that the cards from top to bottom are [6, 3]. Then Vasily looks at card 6, puts it under the deck, then at card 3 and puts it away. Then there is only one card with number 6 on it, and Vasily looks at it and puts it away. Thus, in total Vasily looks at 7 cards.

在第一个例子中,瓦西里首先查看数字为 6 的卡片,将其放到牌堆底部;接着查看数字为 3 的卡片,也将其放到牌堆底部;然后查看数字为 1 的卡片。由于该卡片上的数字是剩余卡片中的最小值,他将这张标有 1 的卡片移出游戏。此后,从上到下的牌序为 [2, 6, 3]。接着,瓦西里查看最上面的数字为 2 的卡片,并将其移出游戏。此后,从上到下的牌序为 [6, 3]。然后,瓦西里先查看数字为 6 的卡片,将其放到牌堆底部;再查看数字为 3 的卡片,并将其移出游戏。此时只剩一张数字为 6 的卡片,瓦西里查看它并将其移出游戏。因此,瓦西里总共查看了 7 张卡片。

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

首页