Pomoc oko zadatka Banka iz Priručnika za C++

Kako ovaj code moze da se ubrza?

Dobijam TLE, ne znam kako bih mogao da ga ubrzam. Nisam siguran da li je kod ispravan (mada testirao sam ga 2 puta i izgleda kao da radi kako treba) pa u slucaju da nije zamolio bih za pomoc i oko toga :smiley:
Evo koda:

#include <iostream>
#include <string>
int main()
{
	int i, stanje, transakcija, error;
	std::string tipTran;
	for (i = 1, stanje = 0, error= 0; i <= 27; i++)
	{
		std::cin >> tipTran >> transakcija;
		if (tipTran == "ISPLATA")
			transakcija *= -1;
		stanje += transakcija;
		error += transakcija;
		if (stanje == 0)
		{
			for (int j = 1; j <= 3; j++)
			{
				i++;
				std::cin >> tipTran >> transakcija;
				if (transakcija == 0) j--;
				if (tipTran == "ISPLATA")
					transakcija *= -1;

				error+= transakcija;
				transakcija /= 2;
				stanje += transakcija;
			}
		}
	}
	if (stanje>error)
		std::cout << "Povecati stanje za " << stanje - error<< " dinara." << std::endl;
	else
		std::cout << "Smanjiti stanje za " << error - stanje << " dinara." << std::endl;
}

Link ka zadatku ili odgovarajućoj stranici

https://petlja.org/biblioteka/r/Problems/Banka