Cod sursa(job #3332919)

Utilizator Cezar2009Cezar Mihai Titihazan Cezar2009 Data 9 ianuarie 2026 20:30:33
Problema Prefix Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.32 kb
//https://www.infoarena.ro/problema/prefix

//#pragma GCC optimize("O3")   
//#pragma GCC optimize("Ofast") 
//#pragma GCC optimize("fast-math") 
//#pragma GCC optimize("unroll-loops") 
//#pragma GCC optimize("inline")  
//#define _USE_MATH_DEFINES
//#define _CRT_SECURE_NO_WARNINGS

#include <iostream>
#include <fstream>
//#include <vector>
#include <cstring>
//#include <cmath>
//#include <bitset>
//#include <queue>
//#include <stack>
//#include <utility>
//#include <algorithm>
//#include <string>
//#include <map>
//#include <unordered_map>
//#include <set>
//#include <unordered_set>
//#include <cstdint>
//#include <climits>
//#include <iomanip>
//#include <cstdio>
//#include <tuple>

using namespace std;

ifstream fin("prefix.in");
ofstream fout("prefix.out");

int main()
{
	//ios_base::sync_with_stdio(false);
	//cin.tie(nullptr);
	//cout.tie(nullptr);

	int t, i, j, rez;
	string s, ss;

	fin >> t;
	while (t--)
	{
		fin >> s;

		rez = 0;
		ss.clear();
		for (i = 0; i < s.size(); ++i)
		{
			int len = i + 1;
			int cnt = 0;

			while ((cnt + 2) * len <= s.size())
			{
				if (s.compare((cnt + 1) * len, len, s, 0, len) == 0)
					cnt++;
				else
					break;
			}
			
			if(cnt)
				rez = max(rez, cnt * len + len);
		}

		fout << rez << "\n";
	}

	return 0;
}