CF1798C.Candy Store

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

The store sells nn types of candies with numbers from 11 to nn . One candy of type ii costs bib_i coins. In total, there are aia_i candies of type ii in the store.

You need to pack all available candies in packs, each pack should contain only one type of candies. Formally, for each type of candy ii you need to choose the integer did_i , denoting the number of type ii candies in one pack, so that aia_i is divided without remainder by did_i .

Then the cost of one pack of candies of type ii will be equal to bidib_i \cdot d_i . Let's denote this cost by cic_i , that is, ci=bidic_i = b_i \cdot d_i .

After packaging, packs will be placed on the shelf. Consider the cost of the packs placed on the shelf, in order c1,c2,,cnc_1, c_2, \ldots, c_n . Price tags will be used to describe costs of the packs. One price tag can describe the cost of all packs from ll to rr inclusive if cl=cl+1==crc_l = c_{l+1} = \ldots = c_r . Each of the packs from 11 to nn must be described by at least one price tag. For example, if c1,,cn=[4,4,2,4,4]c_1, \ldots, c_n = [4, 4, 2, 4, 4] , to describe all the packs, a 33 price tags will be enough, the first price tag describes the packs 1,21, 2 , the second: 33 , the third: 4,54, 5 .

You are given the integers a1,b1,a2,b2,,an,bna_1, b_1, a_2, b_2, \ldots, a_n, b_n . Your task is to choose integers did_i so that aia_i is divisible by did_i for all ii , and the required number of price tags to describe the values of c1,c2,,cnc_1, c_2, \ldots, c_n is the minimum possible.

For a better understanding of the statement, look at the illustration of the first test case of the first test:

Let's repeat the meaning of the notation used in the problem:

aia_i — the number of candies of type ii available in the store.

bib_i — the cost of one candy of type ii .

did_i — the number of candies of type ii in one pack.

cic_i — the cost of one pack of candies of type ii is expressed by the formula ci=bidic_i = b_i \cdot d_i .

输入格式

Each test contains multiple test cases. The first line contains the number of test cases tt ( 1t1000001 \le t \le 100\,000 ). Description of the test cases follows.

The first line of each test case contains a single integer nn ( 2n2000002 \le n \le 200\,000 ) — the number of types of candies.

Each of the next nn lines of each test case contains two integers aia_i and bib_i ( 1ai1091 \le a_i \le 10^9 , 1bi100001 \le b_i \le 10\,000 ) — the number of candies and the cost of one candy of type ii , respectively.

It is guaranteed that the sum of nn over all test cases does not exceed 200000200\,000 .

输出格式

For each test case, output the minimum number of price tags required to describe the costs of all packs of candies in the store.

输入输出样例

  • 输入#1

    5
    4
    20 3
    6 2
    14 5
    20 7
    3
    444 5
    2002 10
    2020 2
    5
    7 7
    6 5
    15 2
    10 3
    7 7
    5
    10 1
    11 5
    5 1
    2 2
    8 2
    6
    7 12
    12 3
    5 3
    9 12
    9 3
    1000000000 10000

    输出#1

    2
    1
    3
    2
    5

说明/提示

In the first test case, you can choose d1=4d_1 = 4 , d2=6d_2 = 6 , d3=7d_3 = 7 , d4=5d_4 = 5 . Then the cost of packs will be equal to [12,12,35,35][12, 12, 35, 35] . 22 price tags are enough to describe them, the first price tag for c1,c2c_1, c_2 and the second price tag for c3,c4c_3, c_4 . It can be shown that with any correct choice of did_i , at least 22 of the price tag will be needed to describe all the packs. Also note that this example is illustrated by a picture in the statement.

In the second test case, with d1=4d_1 = 4 , d2=2d_2 = 2 , d3=10d_3 = 10 , the costs of all packs will be equal to 2020 . Thus, 11 price tag is enough to describe all the packs. Note that aia_i is divisible by did_i for all ii , which is necessary condition.

In the third test case, it is not difficult to understand that one price tag can be used to describe 22 nd, 33 rd and 44 th packs. And additionally a price tag for pack 11 and pack 55 . Total: 33 price tags.

首页