55 lines
2.2 KiB
Markdown
55 lines
2.2 KiB
Markdown
![]() |
---
|
|||
|
id: 5900f40a1000cf542c50ff1d
|
|||
|
title: >-
|
|||
|
Завдання 158: Дослідження рядкових типів, де лише один символ стоїть у лексикографічному порядку зліва від сусіднього символу
|
|||
|
challengeType: 5
|
|||
|
forumTopicId: 301789
|
|||
|
dashedName: >-
|
|||
|
problem-158-exploring-strings-for-which-only-one-character-comes-lexicographically-after-its-neighbour-to-the-left
|
|||
|
---
|
|||
|
|
|||
|
# --description--
|
|||
|
|
|||
|
Якщо взяти три різні літери з 26 літер англійського алфавіту, то можна поділити алфавіт на рядкові типи із трьох символів.
|
|||
|
|
|||
|
Наприклад, 'abc', 'hat' та 'zyx'.
|
|||
|
|
|||
|
Якщо подивитись на ці три приклади, то у 'abc' два символи стоять зліва від сусіднього значення у лексикографічному порядку.
|
|||
|
|
|||
|
У 'hat' лише один символ стоїть зліва від сусіднього символу у лексикографічному порядку. У 'zyx' нуль символів стоять у лексикографічному порядку зліва від сусіда.
|
|||
|
|
|||
|
Усього є 10400 рядкових типів довжиною в 3 символи, де лише один символ стоїть у лексикографічному порядку відносно сусіднього символу зліва.
|
|||
|
|
|||
|
Розглянемо рядки $n ≤ 26$ різних символів алфавіту.
|
|||
|
|
|||
|
Для кожного $n$, $p(n)$ є певна кількість рядкових типів з довжиною $n$, де лише один символ стоїть у лексикографічному порядку відносно сусіда зліва.
|
|||
|
|
|||
|
Яке найбільше значення $p(n)$?
|
|||
|
|
|||
|
# --hints--
|
|||
|
|
|||
|
`lexicographicNeighbours()` має повертати `409511334375`.
|
|||
|
|
|||
|
```js
|
|||
|
assert.strictEqual(lexicographicNeighbours(), 409511334375);
|
|||
|
```
|
|||
|
|
|||
|
# --seed--
|
|||
|
|
|||
|
## --seed-contents--
|
|||
|
|
|||
|
```js
|
|||
|
function lexicographicNeighbours() {
|
|||
|
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
lexicographicNeighbours();
|
|||
|
```
|
|||
|
|
|||
|
# --solutions--
|
|||
|
|
|||
|
```js
|
|||
|
// solution required
|
|||
|
```
|