Cześć, ostatnio robiąc pewne zadanie ze SPOJA (https://pl.spoj.com/problems/WI_DZWON/) natknąłem się na to, że mam problem z dodaniem minut do istniejącego już czasu np. 45 minut.
Przykład
Wejście:
8:15
Wyjście:
9:00
W teorii potrafię to zrobić ale mój algorytm wygląda bardzo średnio. Jest jakiś sposób żeby dodawać czas używając mniej lini kodu? Mój dotychczasowy algorytm na dodawanie minut:
void dodajMinute(string czas)
{
if(czas[4]=='9')
{
czas[4]='0';
if(czas[3]=='5')
{
czas[3]='0';
czas[1]++;
if(czas[1]=='0'||czas[1]=='4'&&czas[0]=='2')
{
if(czas[1]=='4'&&czas[0]=='2')czas="00:00";
else
{
czas[1]='0';
czas[0]++;
}
}
}
else czas[3]++;
}
else czas[4]++;
}