function rot(a,b,c) { return (b[0]-a[0])*(c[1]-b[1])-(b[1]-a[1])*(c[0]-b[0]);} function jarvis(a) { n = a.length; // кількість точок p = new Array; for (j = 0; j < n; j++) p[j]=j; for (j = 0; j < n; j++) // 1. Пошук стартової точки if ((a[p[j]][0] < a[p[0]][0]) || ((a[p[j]][0] == a[p[0]][0]) && (a[p[j]][1] < a[p[0]][1]))) [p[j], p[0]] = [p[0], p[j]]; h = new Array; h.push(p[0]); line=true; // 2. Перевірка розташування на одній прямій dj = Math.abs(a[0][0]-a[1][0]) + Math.abs(a[0][1]-a[1][1]); j = 1; for (i=2; i