3290: 蛋糕(cake)

题目:
一个边长为1的正n边形,求一个正m边形,使它的中心与正n边形的中心相同,且完全包含正n边形,使它边长最小。
20%:n|m; 20%:m|n; 100%:n,m<=1e9;
题解:
先考虑对于n|m,画图可发现它要将原来的一边变为m/n边,因为中心相同,故考虑以中心为圆心,作这两个多边形的外接圆,即可计算求得。
再考虑对于m|n,再画图可发现要将每n/m边形作切线变为m条边,同理可求得。
对于一般的数据,因为直接将n变形转化为m边形不容易做,考虑能否将问题转为前两种,那么要找出一个x,使n|x,m|x,即lcm(n,m),那么先将n转为x,再将x转为m,而这样一定是最优的,因为无论这个外接多边形如何旋转,都不可能更小。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值