Задача
Дана строка $s$, в которой выделили подстроку, состоящую из символов с $i$-го по $j$-ый включительно (символы строки $s$ нумеруются с единицы) и поменяли местами $i$-ый символ с $j%-ым, %(i + 1)%-ый с %(j — 1)$-ым и так далее (конвертировали подстроку). Выведите строку $s$ после внесенных изменений.
Входные данные
В первой строке содержится строка $s$ длиной не более $1000$ символов, во второй — два числа $i$ и $j$ $\left (i \leqslant j \right).$
Выходные данные
Выведите строку $s$ после внесенных изменений.
Тесты
| Входные данные | Выходные данные | |
| $zbbg \\ 2 \; 3$ | $zbbg$ | |
| $gaqipkajibk \\ 5 \; 6$ | $gaqikpajibk$ | |
| $helloworld \\ 5 \; 7 $ | $helloworld$ | |
| $rkdobnjfyy \\ 6 \; 3 $ | $rkdobnjfyy$ |
Код программы (c-string)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#include <iostream> #include <cstring> using namespace std; int main() { char s[1001]; cin >> s; int i, j; cin >> i >> j; for (int b = i - 1, c = j - 1; b < c; b++,c--) { int k = s[b]; s[b] = s[c]; s[c] = k; } cout << s; return 0; } |
Решение задачи (c-string)
Для решения задачи объявим массив, в котором будем хранить входную строку. Далее в цикле обращаем подстроку и выводим строку $s$ после внесенных изменений.
Код программы (string)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include <iostream> using namespace std; int main() { string s; cin >> s; int i, j; cin >> i >> j; for (int b = i - 1, c = j - 1; b < c; b++,c--) { int k = s[b]; s[b] = s[c]; s[c] = k; } cout << s; return 0; } |
Решение задачи (string)
Для решения задачи вводим строку $s$. Далее в цикле конвертируем подстроку и выводим строку $s$ после внесенных изменений.
Ссылки
Условие задачи на e-olymp
Код решения на ideone(c-string)
Код решения на ideone(string)

Приближалась зима, и Хома с Сусликом решили запастись горохом. Весь день они бегали в амбар и таскали по несколько стручков: Хома по четыре, а Суслик по два. К вечеру они пересчитали все стручки, что они натаскали, и задумались, как теперь этот горох делить. Хома утверждал, что если он за раз тащил в два раза больше, чем Суслик, то и гороха ему должно достаться в два раза больше. Суслик на это резонно возражал, что, во-первых, скорость у Хомы заметно меньше, чем у Суслика, а, во-вторых, кто его знает, может Хома всего раз-два сбегал, а остальное время бездельничал…
Тим ужасно любит содовую воду, иногда он ею никак не может напиться. Еще более досадным является тот факт, что у него постоянно нет денег. Поэтому единственным легальным способом их получения является продажа пустых бутылок из-под соды. Иногда в добавок к его лично выпитым бутылкам добавляются те, которые Тим иногда находит на улице. Однажды Тима настолько замучила жажда, что он решил пить до тех пор пока мог себе это позволить.
Для отправки комментария необходимо войти на сайт.