-22 / 2 / 0
Регистрация: 16.09.2015
Сообщений: 86

Задача «Форматирование кода» не проходит все тесты, теперь на 9-ом тесте заваливается

03.10.2017, 14:00. Показов 2278. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача «Форматирование кода» не проходит все тесты, теперь на 9-ом тесте заваливается. Примеры, указанные в условии работают, а потом тестировщик пробует еще несколько различных вариантов входных данных. Какой вариант входа не сработал, он не показывает. Помогите пожалуйста разобраться, какие условия в моем коде не соблюдены.

Условие задачи:
Кликните здесь для просмотра всего текста
Форматирование кода

ограничение по времени на тест2 секунды
ограничение по памяти на тест256 мегабайт
вводstdin
выводstdout

Вам требуется отформатировать текст программы на C-подобном языке, расставив отступы строк нужного размера.

Считайте, что если строка заканчивается на «{», то глубина вложенности увеличивается (и отступ последующих строк увеличивается на 4 пробела). Если строка начинается с «}» и отступ не пустой, то глубина вложности уменьшается (отступ этой строки и далее уменьшается на 4 пробела).

В строках заданной программы надо игнорировать первоначальное форматирование, то есть лидирующие пробелы и концевые пробелы перед форматированием следует удалить. Если строка пустая или состоит только из пробелов, то выведите пустую строку, никаких пробелов добавлять в начало не нужно.

Не гарантируется, что заданная программа является корректной для какого-то языка или что в ней сбалансированы какие-либо скобки и т.п.

Входные данные

Входные данные состоят из последовательности строк, представляющий текст программы. Гарантируется, что все строки состоят из символов с кодами ASCII от 32 до 127. Не гарантируется, что заданная программа является корректной для какого-то языка или что в ней сбалансированы какие-либо скобки и т.п. Размер входных данных не превосходит 100 Кб.

Выходные данные

Выведите отформатированный текст программы.

Код программы, реализованной мной на C#:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp150
{
    class Program
    {
        static void Main(string[] args)
        {
            string current = "";
            int m = 0;
            int s = 0;
            List<string> lines = new List<string>();
            while (((current = Console.ReadLine()) != null) && (m != 2))
            {
                current = current.TrimStart(' ');
                current = current.TrimEnd(' ');
                lines.Add(current);
                if (current.Length == 0)
                {
                    m = m + 1;
                }
                else
                {
                    m = 0;
                }
            }
            m = 0;
            for (int i = 0; i < lines.Count; i++)
            {
                if ((lines[i].StartsWith("}")) && (lines[i].EndsWith("{")))
                {
                    s = s - 1;
                    m = s + 1;
                }
                else if (lines[i].EndsWith("{"))
                {
                    m = m + 1;
                }
                else if (lines[i].StartsWith("}"))
                {
                    s = s - 1;
                    m = s;
                }
                if (lines[i].Length != 0)
                {
                    while (s > 0)
                    {
                        lines[i] = "    " + lines[i];
                        s--;
                    }
                }
                s = m;
            }
            for (int i = 0; i < lines.Count; i++)
            {
                Console.WriteLine(lines[i]);
            }
            Console.ReadLine();
        }
    }
}
Примеры из условия задачи(они отработали):
Миниатюры
Задача «Форматирование кода» не проходит все тесты, теперь на 9-ом тесте заваливается   Задача «Форматирование кода» не проходит все тесты, теперь на 9-ом тесте заваливается  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.10.2017, 14:00
Ответы с готовыми решениями:

Задача «Форматирование кода» не проходит все тесты, уже на третьем заваливается
Задача «Форматирование кода» не проходит все тесты, уже на третьем заваливается. Примеры, указанные в условии работают, а потом тестировщик...

Задача «Форматирование кода» не проходит все тесты
Задача не проходит все тесты. Пример, указанный в условии работает, а потом тестировщик пробует еще несколько различных вариантов входных...

Задача «Телефонная книга» не проходит все тесты
Задача не проходит все тесты. Пример, указанный в условии работает, а потом тестировщик пробует еще несколько различных вариантов входных...

21
Эксперт .NET
 Аватар для Usaga
14732 / 9506 / 1363
Регистрация: 21.01.2016
Сообщений: 35,861
03.10.2017, 18:04
Студворк — интернет-сервис помощи студентам
CBBBBB, я в самом первом разобрался. И в последующих. Что там не так я указал. Если до вас не доходит, то это ваши проблемы.

Бывайте.
0
-22 / 2 / 0
Регистрация: 16.09.2015
Сообщений: 86
03.10.2017, 18:11  [ТС]
Usaga, обосновал как надо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.10.2017, 18:11

Задача «Телефонная книга» не проходит все тесты
Задача не проходит все тесты. Пример, указанный в условии работает, а потом тестировщик пробует еще несколько различных вариантов входных...

Задача форматирования таблицы не проходит все тесты
Задача не проходит все тесты. Пример, указанный в условии работает, а потом тестировщик пробует еще несколько различных вариантов входных...

Задача преобразования XML не проходит все тесты
Задача не проходит все тесты. Примеры, указанные в условии отрабатывают, а потом тестировщик пробует еще несколько различных вариантов...

Задача по преобразованию XML не проходит все тесты, дает ошибку “Неправильный ответ на тест 8”
Задача по преобразованию XML не проходит все тесты, дает ошибку &quot;Неправильный ответ на тест 8&quot;, что-то видимо не учел. ...

Не проходит все тесты
#include &lt;iostream&gt; #include &lt;cmath&gt; int main() { long long m, n; std::cin &gt;&gt; m &gt;&gt; n; m %= 12; long long x = n...


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

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Опции темы

Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru