luogu#P8482. 「HGOI-1」Number

    ID: 12474 远端评测题 750ms 256MiB 尝试: 0 已通过: 0 难度: 4 上传者: 标签>贪心高精度洛谷原创Special JudgeO2优化洛谷月赛

「HGOI-1」Number

题目背景

bh1234666\text{bh1234666} 正在学习乘法!

题目描述

bh1234666\text{bh1234666} 有一定数量的数字 090 \sim 9,现在他想让你寻找一种分配方案,将它们分成两个整数,使得他们的乘积 pp 最大。

由于 bh1234666\text{bh1234666} 不喜欢太大的数,所以你只需要输出两个非负整数,使它们的乘积等于最大乘积 pp,但是这两个整数 090 \sim 9 的数量不能等于给定的数量(任意一个数字数量不相等即可,不考虑前导零)。

bh1234666\text{bh1234666} 是很善良的,如果 090 \sim 9 的数量等于给定的数量了,你依旧可以得到的一半的分。

输入格式

第一行十个整数 c0,c1,c9c_0,c_1,\cdots c_9,分别表示 090 \sim 9 的个数。

输出格式

共两行每行一个非负整数,分别表示你给出的两个非负整数。

1 2 3 2 1 1 2 1 2 1
13949030
620572547

提示

样例解释

最大可能乘积为 $97643210 \times 88653221=13949030 \times 620572547=8656385075279410$。

若输出 97643210×8865322197643210 \times 88653221 则只能得到一半的分,因为 090\sim 9 出现的次数与给定的相同。

数据范围及约定

本题采用捆绑测试,共有 55subtask\text{subtask},最终分数为所有 subtask\text{subtask} 分数之和。

$$\def\arraystretch{1.5} \begin{array}{|c|c|c|}\hline \textbf{Task} & \textbf{Score} & \sum c_i\le \cr\hline 1 & 10 & 20 \cr\hline 2 & 20 & 100 \cr\hline 3 & 20 & 5000 \cr\hline 4 & 20 & 10^6 \cr\hline 5 & 30 & 10^7 \cr\hline \end{array} $$

对于 100%100\% 的数据,保证 1ci1 \le c_ici107\sum c_i \le 10^7

说明

本题有 spj\text{spj},两数乘积正确得一半的分,数量与给出的不同且乘积正确得全部分数。故每一 subtask\text{subtask} 的得分为其中所有数据点得分的最小值