#P11966. [SPOJ2668]Polygon

    ID: 11116 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 8 上传者: 标签>算法基础二分图论2-SAT数据结构线段树可持久化模拟CF2500

[SPOJ2668]Polygon

题目描述

平面上给定 NN 个互不相同的点,并保证任意三个点不共线。

请从这些点中选出恰好 KK 个点作为顶点,组成一个凸多边形,使其面积尽可能小。

你需要输出这个最小面积的整数部分

如果不存在满足条件的凸多边形,则输出 0

输入格式

第一行两个整数 N,KN,K

接下来 NN 行,每行两个整数:

x_i y_i

表示第 ii 个点的坐标。

数据范围

0<N<50,0<K<11.0<N<50, \qquad 0<K<11.

所有坐标均为非负整数,且小于 99999999

保证任意三个给定点不共线。

输出格式

输出一个整数,表示能够得到的最小多边形面积的整数部分

这里的“整数部分”指直接舍去小数部分,即向下取整不进行四舍五入

例如:

  • 若最小面积为 55,输出 5
  • 若最小面积为 5.55.5,也输出 5
  • 若最小面积为 12.512.5,输出 12

由于所有点的坐标均为整数,因此多边形面积只可能是整数或形如 x.5x.5 的半整数。

样例输入

4 3
0 0
1 1
0 10
10 0

样例输出

5