CF813E.Army Creation
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
As you might remember from our previous rounds, Vova really likes computer games. Now he is playing a strategy game known as Rage of Empires.
In the game Vova can hire n different warriors; i th warrior has the type ai . Vova wants to create a balanced army hiring some subset of warriors. An army is called balanced if for each type of warrior present in the game there are not more than k warriors of this type in the army. Of course, Vova wants his army to be as large as possible.
To make things more complicated, Vova has to consider q different plans of creating his army. i th plan allows him to hire only warriors whose numbers are not less than li and not greater than ri .
Help Vova to determine the largest size of a balanced army for each plan.
Be aware that the plans are given in a modified way. See input section for details.
输入格式
The first line contains two integers n and k ( 1<=n,k<=100000 ).
The second line contains n integers a1 , a2 , ... an ( 1<=ai<=100000 ).
The third line contains one integer q ( 1<=q<=100000 ).
Then q lines follow. i th line contains two numbers xi and yi which represent i th plan ( 1<=xi,yi<=n ).
You have to keep track of the answer to the last plan (let's call it last ). In the beginning last=0 . Then to restore values of li and ri for the i th plan, you have to do the following:
- li=((xi+last) mod n)+1 ;
- ri=((yi+last) mod n)+1 ;
- If li>ri , swap li and ri .
输出格式
Print q numbers. i th number must be equal to the maximum size of a balanced army when considering i th plan.
输入输出样例
输入#1
6 2 1 1 1 2 2 2 5 1 6 4 3 1 1 2 6 2 6
输出#1
2 4 1 3 2
说明/提示
In the first example the real plans are:
- 1 2
- 1 6
- 6 6
- 2 4
- 4 6