Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
2 / 2 / 0
Регистрация: 07.11.2018
Сообщений: 15

Простенькое архивирование строки

07.11.2018, 20:19. Показов 1459. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно написать алгоритм сжатия вводимой строки, где каждая подпоследовательность из одинаковых символов заменяется на текст х(к), где х - повторяющийся символ, а к - количество этих символов в последовательности.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.11.2018, 20:19
Ответы с готовыми решениями:

Простенькое регулярное выражение
Здравствуйте! Необходимо в строке найти открывающую скобку "(", после неё любое количество любых символов и закрывающую скобку...

Как создать простенькое клиент-серверное приложение
вобщем такая задача: создать простенькое клиентское и серверное приложение, чтобы с клиента можно было авторизовываться на сервере, и тд и...

Оцените пожалуйста моё первое простенькое приложение на C#
Замечания и критика только приветствуется. Интересует еще вопрос, а можно ли сократить количество написанного кода? И можно ли сделать так,...

7
177 / 151 / 31
Регистрация: 28.09.2018
Сообщений: 204
07.11.2018, 22:16
предположим, исходная строка : "f(3)=(((5+6)*7/((3+1)/9)))", что должно получиться на выходе?
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
07.11.2018, 22:18
Лучший ответ Сообщение было отмечено Kotes как решение

Решение

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
using System;
using System.Text.RegularExpressions;
 
namespace Question2347247
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Введите строку:");
            var str = Console.ReadLine();
            Console.WriteLine(Cipher(str));
            Console.ReadKey();
        }
 
        static string Cipher(string str)
            => Regex.Replace(str, "(.)\\1+", m => $"{m.Value[0]}({m.Length})");
    }
}
Добавлено через 1 минуту
griffon88, ((3)5+6)*7/((2)3+1)/9)(3)
0
177 / 151 / 31
Регистрация: 28.09.2018
Сообщений: 204
07.11.2018, 22:22
amr-now, тут не всё так просто...
ну по крайней мере, если требуется восстанавливать строку из архивированного вида в начальное состояние.
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
07.11.2018, 22:24
griffon88, задача учебная. Одно непонятно - конечными автоматами что-ли студентов заставляют перебирать строки?
Красивое решение той же задачи предполагает в среднем год обучения.
0
2 / 2 / 0
Регистрация: 07.11.2018
Сообщений: 15
07.11.2018, 22:29  [ТС]
На выходе будет "f(3)=((3)5+6)*7/((2)3+1)/9)(3)"

Добавлено через 1 минуту
Разархивация не требуется
1
177 / 151 / 31
Регистрация: 28.09.2018
Сообщений: 204
07.11.2018, 22:36
Цитата Сообщение от Kotes Посмотреть сообщение
Разархивация не требуется
тогда да, несложно )))

но всё-таки, если бы требовалась разархивация, задача была бы интересная.
0
2 / 2 / 0
Регистрация: 07.11.2018
Сообщений: 15
07.11.2018, 22:38  [ТС]
Я тут почитал про регулярки, с ними можно и разархивировать +- изи
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.11.2018, 22:38
Помогаю со студенческими работами здесь

Архивирование
Дорбрый день. Передо мной встала задача работы с архивами, необходимые условия: - упаковка по фильтру (добавление определённых файлов в...

Архивирование
Как в C# архивировать каталоги(с подкаталогами и файлами) и отдельные файлы Если можно код или пример.

Архивирование файлов
Доброго времени суток, столкнулся с проблемой, не знаю как реализовать => нужно файлы 2 определенных типов объединить в 1 архив. using...

Архивирование файлов из папки
Есть папка с файлами. Нужно заархивировать каждый файл по отдельности в другую папку. Можно использовать библиотеку Ionic.zip.

Архивирование в ZIP под .NET
Здравствуйте. прошу помощи в вопросе ирхивирования в ZIP средствами .NET в Visual Studio 2012. Судя по документации на сайте майкрософт,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru