CF346C.Number Transformation II

提高+/省选-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

You are given a sequence of positive integers _x_1, _x_2, ..., x__n and two non-negative integers a and b. Your task is to transform a into b. To do that, you can perform the following moves:

  • subtract 1 from the current a;
  • subtract a mod x__i (1 ≤ i ≤ n) from the current a.

Operation a mod x__i means taking the remainder after division of number a by number x__i.

Now you want to know the minimum number of moves needed to transform a into b.

给你一个正整数序列 x1, x2, ..., xnx_1, x_2, ..., x_n 和两个非负整数 aa 与 bb。你的任务是将 aa 变换为 bb。为此,你可以执行以下操作:

  • 将当前的 aa 减去 11;
  • 将当前的 aa 减去 a mod xia \bmod x_i(其中 1 ≤ i ≤ n1 \leq i \leq n)。

运算 a mod xia \bmod x_i 表示 aa 除以 xix_i 后所得的余数。

现在你想知道将 aa 变换为 bb 所需的最少操作次数。

输入格式

The first line contains a single integer n (1 ≤  n ≤ 105). The second line contains n space-separated integers _x_1, _x_2, ..., x__n (2 ≤  x__i ≤ 109). The third line contains two integers a and b (0  ≤ b ≤  a ≤ 109, a - b ≤ 106).

第一行包含一个整数 nn(1≤n≤1051 \leq n \leq 10^5)。
第二行包含 nn 个以空格分隔的整数 x1, x2, …, xnx_1,\ x_2,\ \dots,\ x_n(2≤xi≤1092 \leq x_i \leq 10^9)。
第三行包含两个整数 aa 和 bb(0≤b≤a≤1090 \leq b \leq a \leq 10^9,且 a−b≤106a - b \leq 10^6)。

输出格式

Print a single integer — the required minimum number of moves needed to transform number a into number b.

输出一个整数——将数字 aa 变换为数字 bb 所需的最少操作次数。

输入输出样例

  • 输入#1

    3
    3 4 5
    30 17

    输出#1

    6
  • 输入#2

    3
    5 6 7
    1000 200

    输出#2

    206

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

首页