56 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | id: 5900f4691000cf542c50ff7b | |||
|  | challengeType: 5 | |||
|  | title: 'Problem 252: Convex Holes' | |||
|  | videoUrl: '' | |||
|  | localeTitle: 'Задача 252: выпуклые отверстия' | |||
|  | --- | |||
|  | 
 | |||
|  | ## Description
 | |||
|  | <section id="description"> Учитывая множество точек на плоскости, мы определяем выпуклую дыру как выпуклый многоугольник, имеющий в качестве вершин любую из заданных точек и не содержащую ни одной из заданных точек внутри нее (помимо вершин, могут быть указаны другие заданные точки по периметру многоугольника). <p> В качестве примера на рисунке ниже показан набор из двадцати точек и несколько таких выпуклых отверстий. Выпуклое отверстие, показанное в виде красного семиугольника, имеет площадь, равную 1049694,5 квадратных единиц, что является наивысшей возможной областью для выпуклого отверстия на заданном множестве точек. </p><p> В нашем примере мы использовали первые 20 точек (T2k-1, T2k) для k = 1,2, ..., 20, созданных с генератором псевдослучайных чисел: </p><p> S0 = 290797 Sn + 1 = Sn2 mod 50515093 Tn = (Sn mod 2000) - 1000 </p><p> т.е. (527, 144), (-488, 732), (-454, -947), ... </p><p> Какова максимальная площадь для выпуклого отверстия на множестве, содержащего первые 500 точек в псевдослучайной последовательности? Укажите свой ответ, включая одну цифру после десятичной точки. </p></section> | |||
|  | 
 | |||
|  | ## Instructions
 | |||
|  | <section id="instructions"> | |||
|  | </section> | |||
|  | 
 | |||
|  | ## Tests
 | |||
|  | <section id='tests'> | |||
|  | 
 | |||
|  | ```yml | |||
|  | tests: | |||
|  |   - text: <code>euler252()</code> должен вернуть 104924. | |||
|  |     testString: 'assert.strictEqual(euler252(), 104924, "<code>euler252()</code> should return 104924.");' | |||
|  | 
 | |||
|  | ``` | |||
|  | 
 | |||
|  | </section> | |||
|  | 
 | |||
|  | ## Challenge Seed
 | |||
|  | <section id='challengeSeed'> | |||
|  | 
 | |||
|  | <div id='js-seed'> | |||
|  | 
 | |||
|  | ```js | |||
|  | function euler252() { | |||
|  |   // Good luck! | |||
|  |   return true; | |||
|  | } | |||
|  | 
 | |||
|  | euler252(); | |||
|  | 
 | |||
|  | ``` | |||
|  | 
 | |||
|  | </div> | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  | </section> | |||
|  | 
 | |||
|  | ## Solution
 | |||
|  | <section id='solution'> | |||
|  | 
 | |||
|  | ```js | |||
|  | // solution required | |||
|  | ``` | |||
|  | </section> |