Подразделы

Другие разделы

Дата и время

16/11/2024 17:13:29

Авторизация

Имя:
Пароль:
Зарегистрироваться
Восстановить пароль
 

printРазбор задачи E. Определение победителя

Тема: обработка строк, редукция
Сложность: простая

Так как для каждой строки ввода нужно выполнить одинаковые преобразования в баллы и суммирование, удобно оформить это действие в виде подпрограммы:
procedure readncalc(var r:integer);
var i:integer;
    s:string;
begin
  r:=0;
  readln(s);
  for i:=1 to length(s) do
    if s[i]='J' then r:=r+3 { удар Jab - 3 балла }
    else if s[i]='K' then r:=r+2 { удар Kick - 2 балла }
    else r:=r+1; { остальные удары - 1 балл }
end;
Остальная часть программы выглядит после этого очень просто:
var r1,r2:integer;
begin
  readncalc(r1); { Ввод и расчет баллов для каждого участника }
  readncalc(r2);
  if r1>r2 then writeln(1) { Сравнение и вывод победителя }
  else if r1<r2 then writeln(2)
  else writeln(0);
end.
loading