using System;
class Program
{
static void Main()
{
Console.WriteLine(ConvertVideoDurationToSeconds("PT36S")); // 36
Console.WriteLine(ConvertVideoDurationToSeconds("PT1M59S")); // 119
Console.WriteLine(ConvertVideoDurationToSeconds("PT3H37M21S")); // 13041
Console.WriteLine(ConvertVideoDurationToSeconds("PT1H13S")); // 3613
}
static int ConvertVideoDurationToSeconds(string duration)
{
int seconds = 0;
// Удаление префикса "PT"
duration = duration.Replace("PT", "");
// Разделение на части по буквам
string[] parts = duration.Split(new char[] { 'H', 'M', 'S' }, StringSplitOptions.RemoveEmptyEntries);
foreach (string part in parts)
{
int value = int.Parse(part[..^1]); // Извлечение числового значения
char unit = part[^1]; // Извлечение единицы измерения
switch (unit)
{
case 'H':
seconds += value * 3600; // Преобразование часов в секунды
break;
case 'M':
seconds += value * 60; // Преобразование минут в секунды
break;
case 'S':
seconds += value; // Просто добавляем секунды
break;
}
}
return seconds;
}
}