CF436F.Banners

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

All modern mobile applications are divided into free and paid. Even a single application developers often release two versions: a paid version without ads and a free version with ads.

Suppose that a paid version of the app costs pp ( pp is an integer) rubles, and the free version of the application contains cc ad banners. Each user can be described by two integers: aia_{i} — the number of rubles this user is willing to pay for the paid version of the application, and bib_{i} — the number of banners he is willing to tolerate in the free version.

The behavior of each member shall be considered strictly deterministic:

  • if for user ii , value bib_{i} is at least cc , then he uses the free version,
  • otherwise, if value aia_{i} is at least pp , then he buys the paid version without advertising,
  • otherwise the user simply does not use the application.

Each user of the free version brings the profit of c×wc×w rubles. Each user of the paid version brings the profit of pp rubles.

Your task is to help the application developers to select the optimal parameters pp and cc . Namely, knowing all the characteristics of users, for each value of cc from 00 to (max bi)+1(max b_{i})+1 you need to determine the maximum profit from the application and the corresponding parameter pp .

输入格式

The first line contains two integers nn and ww (1<=n<=105; 1<=w<=105)(1<=n<=10^{5}; 1<=w<=10^{5}) — the number of users and the profit from a single banner. Each of the next nn lines contains two integers aia_{i} and bib_{i} (0<=ai,bi<=105)(0<=a_{i},b_{i}<=10^{5}) — the characteristics of the ii -th user.

输出格式

Print (max bi)+2(max b_{i})+2 lines, in the ii -th line print two integers: paypay — the maximum gained profit at c=i1c=i-1 , pp (0<=p<=109)(0<=p<=10^{9}) — the corresponding optimal app cost. If there are multiple optimal solutions, print any of them.

输入输出样例

  • 输入#1

    2 1
    2 0
    0 2
    

    输出#1

    0 3
    3 2
    4 2
    2 2
    
  • 输入#2

    3 1
    3 1
    2 2
    1 3
    

    输出#2

    0 4
    3 4
    7 3
    7 2
    4 2
    
首页