CF1769B2.Копирование файлов II

普及/提高-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

В этой версии задачи размеры копируемых файлов не превышают 101010^{10} байт.

Вы копируете с одного сервера на другой nn файлов размером a1,a2,…,ana_1, a_2, \ldots, a_n байт. Файлы копируются последовательно в заданном порядке.

При копировании вы видите два прогресс-бара: первый показывает процент скопированных данных в текущем файле, а второй — общий процент скопированных данных по всем nn файлам. Оба процента отображаются округлёнными вниз до целого числа. Значения на прогресс-барах обновляются после копирования каждого байта.

Формально, после копирования байта номер xx из файла номер ii первый прогресс-бар показывает ⌊100⋅xai⌋\lfloor \frac{100 \cdot x}{a_i} \rfloor процентов, а второй — ⌊100⋅(a1+a2+…+ai−1+x)a1+a2+…+an⌋\lfloor \frac{100 \cdot (a_1 + a_2 + \ldots + a_{i - 1} + x)}{a_1 + a_2 + \ldots + a_n} \rfloor процентов. В самом начале копирования оба прогресс-бара показывают 00 процентов.

Найдите все такие целые числа от 00 до 100100 включительно, что существует момент времени, в который оба прогресс-бара одновременно показывают это число. Выведите эти числа в порядке возрастания.

在此题目的该版本中,被复制的文件大小不超过 101010^{10} 字节。

你需要按给定顺序依次将 nn 个大小分别为 a1,a2,…,ana_1, a_2, \ldots, a_n 字节的文件从一台服务器复制到另一台服务器。

复制过程中,你将看到两个进度条:第一个进度条显示当前正在复制的文件中已复制数据的百分比;第二个进度条显示所有 nn 个文件中已复制数据的总体百分比。两个百分比均向下取整为整数。进度条的数值在每复制一个字节后更新一次。

形式化地,在复制第 ii 个文件的第 xx 个字节之后,第一个进度条显示 ⌊100⋅xai⌋\lfloor \frac{100 \cdot x}{a_i} \rfloor%,第二个进度条显示 ⌊100⋅(a1+a2+…+ai−1+x)a1+a2+…+an⌋\lfloor \frac{100 \cdot (a_1 + a_2 + \ldots + a_{i - 1} + x)}{a_1 + a_2 + \ldots + a_n} \rfloor%。复制刚开始时,两个进度条均显示 00%。

请找出所有满足如下条件的、介于 00 到 100100(含)之间的整数:存在某一时刻,使得两个进度条同时显示该整数。将这些整数按升序输出。

输入格式

В первой строке задано одно целое число nn (1≤n≤1001 \le n \le 100) — число копируемых файлов.

Во второй строке заданы nn целых чисел a1,a2,…,ana_1, a_2, \ldots, a_n (1≤ai≤10101 \le a_i \le 10^{10}) — размеры файлов в байтах в том порядке, в котором они будут копироваться.

第一行包含一个整数 nn(1≤n≤1001 \le n \le 100)——待复制的文件数量。

第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤ai≤10101 \le a_i \le 10^{10})——按复制顺序给出的各文件大小(单位:字节)。

输出格式

Выведите в возрастающем порядке все числа от 00 до 100100 включительно такие, что существует момент времени, в который на обоих прогресс-барах одновременно показывается это число.

按升序输出所有从 00 到 100100(含)的整数,使得存在某一时刻,两个进度条上同时显示该数字。

输入输出样例

  • 输入#1

    1
    6

    输出#1

    0
    16
    33
    50
    66
    83
    100
  • 输入#2

    2
    100 500

    输出#2

    0
    95
    96
    97
    98
    99
    100
  • 输入#3

    4
    10000000000 2 2 9999999998

    输出#3

    0
    50
    99
    100
  • 输入#4

    6
    170 130 400 256 30 100

    输出#4

    0
    17
    43
    44
    84
    90
    99
    100

说明/提示

В первом тесте копируется всего один файл, поэтому оба прогресс-бара всегда показывают одинаковые значения.

Во втором тесте первый прогресс-бар сразу же уйдёт вперёд, потом сбросится в ноль и начнёт догонять второй прогресс-бар заново. В конце копирования прогресс-бары некоторое время будут показывать одно и то же число.

Обратите внимание, что третий тест в этой версии задачи отличается от третьего теста в предыдущей версии задачи.

在第一个测试中,仅复制一个文件,因此两个进度条始终显示相同的数值。

在第二个测试中,第一个进度条会立即领先,随后重置为零,并重新开始追赶第二个进度条。在复制结束时,两个进度条会在一段时间内显示相同的数值。

请注意,本版本题目中的第三个测试与上一版本题目中的第三个测试不同。

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

首页