// RE: aaaa -> aaa, a: NG
// RE: aaaa -> a, aa, a: OK
function Main(s) {
	var results = [];
	Sub1(s, 0, 1, results);
	//出力
	// console.log(results);
	console.log('%d', results.length);
}
function Sub1(s, i, iLen, results) {
	var Si = s.substr(i, iLen);
	var Sj = s.substr(i + iLen, 1);

	if (Si === Sj) {
		return Sub1(s, i, iLen + 1, results);
	} else {
		results.push(Si, Sj);
		return Sub2(s, i + iLen + 1, 1, Sj, results);
	}
}
function Sub2(s, i, iLen, Si, results) {
	// console.log(i, results);
	if (i > s.length) return;
	var Sj = s.substr(i, iLen);
	if (Sj === '') return;

	if (Si === Sj) {
		if (i + iLen + 1 > s.length) {
			var Si_1 = results[results.length - 2];
			results[results.length - 2] = Si;
			results[results.length - 1] = Si_1;
			return Sub2(s, i, iLen + 1, Si_1, results);
		}
		return Sub2(s, i, iLen + 1, Si, results);
	} else {
		results.push(Sj);
		return Sub2(s, i + iLen, 1, Sj, results);
	}
}
Main(require("fs").readFileSync("/dev/stdin", "utf8"));
