어떤 사람이 보트를 타고 시속 3Km/h로 흘러가는 강물을 거슬러 올라가고 있다.
그가 노를 젓는 속도는 강물의 속도보다 2Km/h 더 빠르다. 
열심히 노를 젓던 그는 모자를 강물에 떨어 뜨리고 30분이 지나서야 자신이 모자를 잃어 버렸다는 것을 알게 되었다. 
만일 이 사람이 배를 돌려 현재와 같은 속도로 돌아가서 모자를 찾는데 얼마의 시간이 걸리는가?

대수학적이거나 기하학적인 방법이 있다고 한다.
어떻게 풀것인가..

------------------------------------------------------------------------------------------------------------------------------------------
answer

[대수적 사고]
(8km/hr)t = (2km/hr * 0.5h + 3km/hr * 0.5h) + (3km/hr)t
(8km/hr)t = 2.5km + (3km/hr)t
(8km/hr)t - (3km/hr)t = 2.5km
t = 0.5hr
즉, 30분이 걸린다.

[기하학적 사고]
문제는 다음의 문제와 동일한 문제이다.
움 직이는 열차의 승객이 있다. 승객은 열차가 가는 반대방향으로 객차통로를 걸어가다가 어느 한 객차 안에 모자를 떨어뜨린다. 30분을 걷고 나서야 모자가 없어진 걸 깨달은 그는 모자를 찾기 위해 다시 몸을 돌려 객차통로를 되짚어 나간다. 이때 그가 같은 속도로 걷는다면 얼마나 걸어가야 모자를 찾을 수 있을 것인가? 
결국 30분이 걸린다.


..
but
프로그래밍에서 코딩만으로 본다면 어느게 좋을지 확신할수는 없다..