牛客IOI周赛16-提高组 - 像鱼

像鱼

https://ac.nowcoder.com/acm/contest/5388/A

题意

将边长为 的如图三角形倒转,求最小移动点数。

  *      * * *
 * *  =>  * *
* * *      *

算法(

将前后两个三角形叠起来,答案即为 总点数-重叠点数=原三角形的(上+左下+右下)非重叠点数。(+ 表示重叠,*表示原三角形,-表示倒转的三角形)

  *        *
 * *  =>  + + -
* * *    * + +
            -

可以发现,当三个三角形边长最接近时,移动数最小。因此,可以发现以下方案:

  • 上方的非重叠三角形边长:
  • 左下的非重叠三角形边长:
  • 左下的非重叠三角形边长:

这组式子可以通过如下图推出:

图片说明

先确定 ,接近三分之一的边长,再使 最接近。

全部评论

相关推荐

点赞 评论 收藏
分享
3 收藏 评论
分享
牛客网
牛客企业服务