#include using std::cout; using std::endl; using std::cin; #include using std::string; //first, second, third, forth, fifth_basic, fifth_default, sixth, seventh, eighth, nineth, problem_1, problem_2, problem_3 #define problem_3 //함수 템플릿 : 타입이 다른 함수를 만들어내는 틀 //클래스 템플릿 : 타입이 다른 클래스를 만들어내는 틀 //기본적인 자료형에 대한 함수는 함수 오버로딩으로 대응할 수 있지만 사용자 정의 자료형에 대해서는 대응할 수 없다. //이때 함수 템플릿을 사용하면 사용자 정의 자료형에도 대응하는 함수를 만들..