Logo
(追記) (追記ここまで)

28763번 - Счастливые билетики 점수다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
10 초 1024 MB0000.000%

문제

Так как Кассандра еще слишком маленькая, чтобы водить машину, она перемещается по Готэму на общественном транспорте. На билетиках, которые выдают в общественном транспорте, пишут 6ドル$ цифр --- его номер. Чтобы скоротать время поездки, Кассандра часто играет в такую игру: она пытается расставить между цифрами из номера билетика арифметические операции и скобки таким образом, чтобы в результате получилось выражение, равное 100ドル$. При этом, цифры, между которыми не вставили никакие операции и скобки, склеиваются в одно число. У Кассандры есть несколько правил:

  • Числа в получившемся выражении не должны содержать лидирующих нулей. При этом, не считается, что число 0ドル$ содержит лидирующие нули, и поэтому оно разрешено.
  • Можно использовать только операции плюс, минус, умножить и разделить, а также отрицание.
  • В процессе вычисления значения выражения, не должно возникнуть деление на 0ドル,ドル а также результаты всех делений должны быть целыми числами.

Формально, выражение, которое Кассандра может получить, должно удовлетворять следующей грамматике:

  • Выражение это (слагаемое) или (выражение <<+>> слагаемое) или (выражение <<->> слагаемое)
  • Слагаемое это (множитель) или (слагаемое <<*>> множитель) или (слагаемое <</>> множитель)
  • Множитель это (число) или (<<->> множитель) или (<<(>> выражение <<)>>)
  • Число это последовательность цифр без лидирующих нулей

Вот примеры некоторых корректных выражений, а также числа, которым они равны: 2*(3+4) $= 14,ドル 0+0 $= 0,ドル --239--179 $= (-(-239)) - (-179) = 239 + 179 = 418,ドル (17+13)/6 $= 5,ドル 0/10 $= 0$ (ноль делить можно), -(21+12) $= -33,ドル (((8))*(9)) $= 72$.

Вот примеры некоторых некорректных выражений: 2(3+4), 2**2, -239-179-, 17+13/6 (потому что 13ドル$ не делится на 6ドル$ нацело), 10/0 (на ноль делить нельзя), 0/0 (даже так), 1+().

Касссандра просит вас помочь ей найти такие выражения для всех возможных номеров билетов. Она понимает, что у вас может не получиться найти выражения для всех номеров. А для некоторых номеров таких выражений и вовсе не существует. Однако, чем больше будет номеров, для которых вы найдете искомые выражения, тем лучше.

입력

Входные данные состоят из нескольких строк. В каждой строке даны 6ドル$ цифр --- номер билета.

출력

Для каждого номера билета выведите искомое выражение, либо <<No solution>>, если такого выражения не существует или вы не смогли его найти.

제한

점수

В этой задаче всего один тест, кроме примера. В нем перечислены все номера билетов в порядке возрастания. Для каждого номера вы должны вывести корректное выражение либо строку <<No solution>>. В противном случае, вы получите 0ドル$ баллов.

Если формат вывода корректен, ваша посылка будет оценена исходя из количества номеров, для которых вы нашли требуемое выражение. Пусть вы нашли выражения для $x$ номеров. Обозначим за $T$ количество номеров, для которых такое выражение существует. Баллы за посылку равны $\lfloor score(x) \rfloor,ドル $score$ --- кусочно-линейная функция, точками излома которой являются точки $(0, 0),ドル $(5, 5),ドル $(55, 10),ドル $(555, 15),ドル $(5555, 20),ドル $(55555, 25),ドル $(T - 55555, 75),ドル $(T - 5555, 80),ドル $(T - 555, 85),ドル $(T - 55, 90),ドル $(T - 5, 95),ドル $(T, 100)$.

Формально $score(x)$ может быть вычислен следующим образом:

$x$ $score(x)$
0ドル \le x < 5$ $x$
5ドル \le x < 55$ 5ドル + \frac{x - 5}{10}$
55ドル \le x < 555$ 10ドル + \frac{x - 55}{100}$
555ドル \le x < 5,555円$ 15ドル + \frac{x - 555}{1,000円}$
5ドル,555円 \le x < 55,555円$ 20ドル + \frac{x - 5,555円}{10,000円}$
55ドル,555円 \le x < T - 55,555円$ 25ドル + 50 \cdot \frac{x - 55,555円}{T - 55,555円 \cdot 2}$
$T - 55,555円 \le x < T - 5,555円$ 75ドル + \frac{x - (T - 55,555円)}{10,000円}$
$T - 5,555円 \le x < T - 555$ 80ドル + \frac{x - (T - 5,555円)}{1,000円}$
$T - 555 \le x < T - 55$ 85ドル + \frac{x - (T - 555)}{100}$
$T - 55 \le x < T - 5$ 90ドル + \frac{x - (T - 55)}{10}$
$T - 5 \le x \le T$ 95ドル + (x - (T - 5))$

예제 입력 1

123456
987654
111111
000000
001000

예제 출력 1

1+(2+3+4)*(5+6)
9+87+(6-5)*4
(111-11)/1
No solution
0+0+100+0

힌트

출처

Olympiad > Russian Olympiad in Informatics > Internet Olympiads in Informatics > 2019-2020 Season > February 15, 2020 D번

채점 및 기타 정보

  • 100점 이상을 획득해야 를 받는다.
(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /