[ARC005D] 連射王高橋君

题意翻译

终于到达鱼屋的高桥君没带多少钱,这样就有些东西不能买,决定向店主询问价格。但店主年老,听力不好,听不见高桥君的声音。没有办法的高桥君决定使用旁边的计算器,把价格打在上面。 但令人困扰的事情是,高桥君不小心把计算器摔了,一些按键摔坏了。计算器有0-9、+和=共12个按键,0、1、+、=四个按键是不会坏的,其余的按键都有坏掉的可能性。 例如,0、1、2、+、=没坏的时候,向店主传达11的方法有以下几种: 1+1+1+1+1+1+1+1+1+1+1= 2+2+2+2+2+1= 11 1+2+1+2+1+1+1+2= 10+1= +和=有以下的用法: +只能用于数字之间。 在使用了+的时候,最后需要用=,没有使用+的话不需要使用=。 另外,由于这个鱼屋的店主脾气不大好,需要尽快的打出来避免他生气。所以需要按按钮的次数尽可能的少。之前举例的情况,只按两次按钮的11的时候,按按钮的次数是最少的。 需要在按按钮次数最少的情况下,利用计算器上没有坏的按钮表示出价格。不论输出结果的顺序(若1+2=是正确的,2+1=也是正确的)。 输入格式: 输入数据为两行 第一行有N(2<=N<=10)个0-9的整数,是可以使用的数字键 必定包含0、1;按照从小到大的顺序排列;+和=不列出,总可以使用。 第二行是需要表示的整数price(1<=price<=10^18) 建议使用64bit整形 输出格式: 输出依次需要按下的按钮,最后输出换行

题目描述

[problemUrl]: https://atcoder.jp/contests/arc005/tasks/arc005_4 ようやく魚屋に到着した高橋君は、あまりお金を持ってきていなかったことに気づきました。これでは定価でうなぎを買うことができません。そこで、店主に値引きしてくれないか交渉することにしました。ところが、魚屋の店主はお年寄りで耳が遠く、値段を言う高橋君の声がうまく聞こえていないようです。仕方がないので高橋君は近くにあった電卓を使って、値段を伝えることにしました。 しかし困ったことに、高橋君はうっかり電卓を落としていくつかのボタンを壊してしまいました。電卓には 数字(`0`-`9`), 加算記号(`+`), イコール(`=`) の $ 12 $ 個のボタンがあります。`0`、`1`、`+`、`=` が壊れていないことは確かですが、それ以外のボタンは壊れている可能性があります。 例えば `0`、`1`、`2`、`+`、`=`が壊れていない場合は、店主に $ 11 $ を伝える方法の例の一部としては以下のようなものがあります。 - 1+1+1+1+1+1+1+1+1+1+1= - 2+2+2+2+2+1= - 11 - 1+2+1+2+1+1+1+2= - 10+1= この時、`+` と `=` は以下のように用いる。 - `+` : 数字と数字の間でのみ押すことができます。 - `=` : `+` を使用する場合は一番最後に必要です。`+` を使っていない場合に押しても何も起きません。 さて、この魚屋の店主は気難しいので、早く伝えないと怒ってしまいます。そこでボタンを押す回数はなるべく少なくしたいです。 先ほどの例の場合は $ 11 $ と押すと、$ 2 $ 回ボタンを押すだけで $ 11 $ を表すことができ、この場合が押す回数は最小になります。 電卓に表示させたい数字が与えられた時、壊れていないボタンのみを用いて数字を表示させるために、押したボタンの回数が最小となる場合に押したボタンを順に答えなさい。なお、加算の形で表す場合は、項の順番は問いません(`1+2=`が正解ならば、`2+1=`も正解です)。 入力は以下の形式で標準入力から与えられる。 > $ b_1b_2...b_N $ $ price $ - 入力は $ 2 $ 行のみである。 - $ 1 $ 行目には $ N(2≦N≦10) $ 文字の整数の文字列が与えられる。 - $ b_i(1≦i≦N) $は、`0`-`9`のいずれかであり、壊れていないボタンを表す。 - $ b_1 $から$ b_N $までに、`0`、`1`の $ 2 $ つは必ず含まれる。 - $ 1 $ 行目の中で、$ b_i $ は小さい順に並んでおり、重複はしない。 - この行に表示された数字のボタンと`+`と`=`を用いることができる。 - $ 2 $ 行目には表示させたい整数 $ price(1≦price<10^{18}) $ が与えられる。 - **注**:64bit型整数型を使うことを推奨します。 壊れていないボタンのみを用いて指定された数字を表示させるために、押したボタンの回数が最小値となる場合に押したボタンを順に答えなさい。 なお、最後には改行を出力せよ。 ``` 01257 2380 ``` ``` 2270+110= ``` - 使用できるボタンは`0`, `1`, `2`, `5`, `7`, `+`, `=` の 7 つです。 - $ 3 $ と $ 8 $ が壊れてしまっているので、加算の形で表す必要があります。 ``` 0123456789 17564523527628452 ``` ``` 17564523527628452 ``` - 全てのボタンが使えるので、入力したい数字を直接入力できます。 ``` 01 9 ``` ``` 1+1+1+1+1+1+1+1+1= ``` - $ 0 $ と $ 1 $ しか使えないので、$ 1 $ つずつ足すしかありません。 ``` 019 2727 ``` ``` 909+909+909= ``` ``` 01457 245723852196245230 ``` ``` 175711751155145110+70011701041100110+400000000010= ```

输入输出格式

输入格式


输出格式


输入输出样例

暂无测试点