#P1508. 2024.05.08-暑期实习-第三题-塔子哥的软工项目

2024.05.08-暑期实习-第三题-塔子哥的软工项目

塔子哥的提醒

目前该题正在整改,大家可以先跳过本题,先做其他题

题目描述

\qquad话说塔子哥还有一门专业课,为什么计科人要学软工啊?这比思修还要思修。不说了,《软件工程》启动!算了,编不下去了,go work!到哪不是苦逼搬砖人?

\qquad软件工程的快速原型方法强调根据客户需求快速建模,让客户尽早接触系统实体,并进一步明确系统需求,这就要求开发者对资源进行合理的利用。正好软工老师布置了一个项目,要求塔子哥担任项目经理,协调利用各种资源。规则如下:

\qquad时间轴上有N种周期出现的资源,每种资源RxR_x的都有自己的周期period_x和偏置offset_x,且资源的<period,offset>对不重复。求可以包含所有种类资源点的最小窗口的起始位置以及长度,由于满足条件的窗口会有若千个,所以只需要返回起始位置最小的窗口。

\qquad说明:

\qquad 1、资源在时间轴上周期出现,例如资源对应的period, offset分别为<10,3>,那么该资源在时间轴上的位置为3,13,23,….,时间轴的最大值不超过INT_MAX;

\qquad 2、最小窗口需要满足每种资源至少包含一次,但是可以包含多次;

\qquad 3、窗口大小至少为1。

输入描述

\qquad第一行为资源的种类数:N,取值范围[1,10];

\qquad第二行为N种资源对应的period和offset,period的取值范围为(0,512],offset的取值范围为(0,period)

输出描述

\qquad满足覆盖N种资源的最小窗口的起始位置以及长度(每个资源至少包含一次),用自然数表示,以空格隔开。

样例一

输入

1
80 3

输出

3 1

解释

\qquad只有一个资源,那么只要包含这个资源的第一个位置(3)即可,最小窗口的起始位置即3,长度为1。

样例二

输入

4
16 7
10 5
20 4
20 16

输出

15 10

Limitation

1s, 1024KiB for each test case.