Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 

Ещё одна игровая механика

(Время: 1 сек. Память: 32 Мб Сложность: 18%)

Для Вас есть спецзадание: реализовать фичу в компьютерной игре с процедурной генерацией мира. Изначально мир представляет из себя клетчатое поле размером w на h. Есть персонаж, находящийся в клетке с координатами (x, y), который может перемещаться в соседние по стороне клетки.

Фича заключается в следующем: если персонаж уходит за пределы существующего мира, то автоматически происходит расширение мира на 1 по соответствующей координате. Например, если мир имеет размерность wi×hi, а персонаж будет находится в координатах (0, 1) и пойдет влево, мир расширится с левой стороны, после чего размерность станет равна (wi+1)×hi.

Зная изначальные размеры мира и стартовые координаты персонажа, а также его последовательность перемещений, определите, сколько клеток будет по итогу в мире. Разработчикам игры это будет важно, так как большие миры сильно нагружают процессор.

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

Первая строка входного файла INPUT.TXT содержит четыре целых числа — начальные координаты персонажа x и y, а также стартовую ширину w и высоту h мира (0 ≤ x < w, 0 ≤ y < h, 1 ≤ w, h ≤ 100).

Вторая строка содержит единственное целое число n — размер последовательности, описывающей перемещения персонажа (1 ≤ n ≤ 105).

Третья строка содержит последовательность перемещений персонажа s — строка длины n, состоящая из символов 'W','A','S','D'.

Символ 'W' означает уменьшение координаты y, символ 'A' означает уменьшение координаты x, символ 'S' означает увеличение координаты y, символ 'D' означает увеличение координаты x.

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

В выходной файл OUTPUT.TXT выведите одно целое число — общее количество клеток в мире после того, как персонаж сделает все перемещения.

Примеры

INPUT.TXTOUTPUT.TXT
10 0 10 10
12
WASAWASDAWAS
154
20 0 5 5
16
DDDDSSSSAAAAWWWW
25

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

[Обсуждение] [Все попытки] [Лучшие попытки]


 Язык программирования C++
 Решение олимпиадных задач
 Региональные олимпиады
 Книги Фёдора Меньшикова
 Тренировочные олимпиады
 Школьный этап
 Муниципальный этап
 Региональный этап
 Полуфинал ВКОШП
 Личное первенство СФУ
 2006 / 2007
 2007 / 2008
 2008 / 2009
 2009 / 2010
 2010 / 2011
 2011 / 2012
 2012 / 2013
 2013 / 2014
 2014 / 2015
 2015 / 2016
 2016 / 2017
 2017 / 2018
 2018 / 2019
 2019 / 2020
 2020 / 2021
 2021 / 2022
 2022 / 2023
 2023 / 2024
 A. Хитрое число
 B. Сортировка за линию?
 C. Игра Рогалик
 D. Школа Зебры
 E. Локдаун Империи
 F. Флагштокинг
 G. GCD Пары
 H. Ещё одна игровая механика
 I. Столкновение пермутонов
 J. Равномерные раскраски

Красноярский краевой Дворец пионеров, (c)2006 - 2024, ИНН 246305493507, E-mail: admin@acmp.ru