Etude on theme of Dijkstra

  • Authors:
  • S. O. Shilova;N. V. Shilov

  • Affiliations:
  • Institute of Mathematics, Novosibirsk, Russia;Institute of Informatics Systems, Novosibirsk, Russia

  • Venue:
  • ACM SIGACT News
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a tutorial for undergraduate students who are interested in different programming contests like National Programming Olympiads or regional ACM International Collegiate Programming Contests (ACM ICPC). It is based on a problem discussed by E. W. Dijkstra in a public lecture in 1994. The tutorial was a part of a special undergraduate course presented for students of Novosibirsk State University in 2003-04 academic year during their preparation for ACM ICPC Final at Prague (2004). The original problem is how to couple N black and N white points on the plane by intervals without intersections. E. W. Dijkstra suggested a nice heuristic search algorithm and proved its termination and correctness by the method of R. W. Floyd. Unfortunately, the upper bound of his algorithm was exponential. Due to this reason, he suggested to audience investigation of the problem complexity and development of an efficient algorithm. We demonstrate that the problem is decidable in cubic time by quadratic reduction to the classical assignment problem. We also discuss how to solve the coupling problem in pure geometric/topological way. We also present some examples of utility of the coupling problem.