В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
sophiek777
sophiek777
09.02.2020 14:58 •  Информатика

Решить на с++ или на паскаль №924 симпатичный узор (время: 1 сек. память: 16 мб сложность: 20%) на днях иван у себя в прихожей выложил кафель, состоящий из квадратных черных и белых плиток. прихожая ивана имеет квадратную форму 4х4, вмещающую 16 плиток. теперь иван переживает, что узор из плиток, который у него получился, может быть не симпатичным. с точки зрения дизайна симпатичным узором считается тот, который не содержит в себе квадрата 2х2, состоящего из плиток одного цвета. примеры возможных узоров: симпатичные узоры: bwbw wbww bwwb bbwb wwbw wbww wwbb b b bwwb несимпатичные узоры: bbwb w bbwb w wwbw w bbwb w по заданному расположению плиток в прихожей ивана требуется определить: является ли выполненный узор симпатичным. входные данные входной файл input.txt содержит 4 строки по 4 символа «w» или «b» в каждой, описывающие узор из плиток. символ «w» обозначает плитку белого цвета, а «b» - черного. выходные данные в выходной файл output.txt выведите «yes», если узор является симпатичным и «no» в противном случае. примеры № input.txt output.txt 1 bwbw bbwb wwbb b 2 bbwb bbwb wwbw bbwb no

Показать ответ
Ответ:
tskaev662
tskaev662
16.08.2020 22:47
Объясняю свой алгоритм решения данного задания.
Берём и запихиваем все строки в двумерный чар массив.
Потом построчно сравниваем i-j элемент столбца с i+1-j. Если это одинаковые символы - мы прибавляем к счётчику +1.
Потом сравниваем i-j+1 и i+1-j+1, если они равны, то мы прибавляем +1 при условии того, что один из этих элементов равен одному из предыдущих
Ну а потом если наш счётчик составляет 2 - мы уже знаем что этот узор не симпатичный.
В противном же случае мы идём дальше до size-1. (в нашем случае size=4 поэтому 4-1=3)
Скриншот с результатом работы, скоростью и самим кодом прикрепил.
UPD:
Ещё можешь уменьшить кол-во итераций, во втором цикле в условии можно сделать strlen(a[i])-1
Решить на с++ или на паскаль №924 симпатичный узор (время: 1 сек. память: 16 мб сложность: 20%) на д
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота