Олимпиадный тренинг

Задача . Сократи код программы


Задача

Темы:
Кролик Клевер продолжает изучать программирование. Он уже изучил строки. Недавно он перешел к изучению подпрограмм, а именно процедур. Но никак не поймет как их использовать. Недавно Клеверу захотелось написать программу, чтобы она из двух предложений печатала самые длинные слова в столбик (если таких слов несколько, то он брал первое встретившееся). Он совсем забыл про процедуры и написал очень сложную программу.
Вот она:
#include <iostream>
using namespace std;
main()
{
	int max, n;
	string s1, s2,wordMax;
	
	getline(cin, s1);
        getline(cin, s2);

	max=0;
	s1=s1+" ";
	while(s1.size() > 0)
	{
		n = s1.find(" ");
		string word=s1.substr(0,n);
		
		if(word.size()>max) 
			{
			 	max = word.size(); 	
			 	wordMax = word;
			}
		s1.erase(0, n+1);
	}
	cout << wordMax << endl;

	
	max=0;
	s2=s2+" ";
	while(s2.size() > 0)
	{
		n = s2.find(" ");
		string word=s2.substr(0,n);
		
		if(word.size()>max) 
			{
			 	max = word.size(); 	
			 	wordMax = word;
			}
		s2.erase(0, n+1);
	}
	cout << wordMax << endl;		
}
Согласитесь это довольно сложная для восприятия программа. 
Помогите кролику Клеверу улучшить программу, выделив одинаковые действия в процедуру.

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w64720
Комментарий учителя