2016计蒜之道-初赛-第五场-A-腾讯的一笔画游戏

描述

腾讯开发了一款益智游戏:一笔画。在一个正 n 边形上,将 n 条边的中点连结,形成一个新的正 n 边形,之后再在新的正 n 边形内连结各个中点,如此重复 k 次,作为游戏的初始图案。玩家要从初始图案最外层 n 个顶点中的一个出发,进行无公共 端点 的一笔画。>>>详情请点击

题解

数学几何问题,涉及到的是求正多边形的内角以及已知两边一角求第三边的一般性问题。难度不大,细心就好。

代码C++

#include <iostream>
#include <cmath>
const double PI = 3.1415926;
double K[22];

int main(int argc, const char * argv[]) 
{
    int n, k;
    while (std::cin >> n >> k)
    {
        std::cin >> K[0];
        double degree = 180 - (360.0 / n);
        for (int i = 1; i <= k; i++)
        {
            K[i] = sqrt(K[i - 1] * K[i - 1] / 2 * (1 - cos(degree * PI / 180)));
        }
        double ans = 0;
        for (int i = 0; i < k; i++)
        {
            ans += K[i] * (n - 0.5);
        }
        ans += K[k] * (n - 1);
        printf("%f\n", ans);
    }

    return 0;
}
全部评论

相关推荐

11-11 14:21
西京学院 C++
无敌混子大王:首先一点,不管学校层次怎么样,教育经历放在第一页靠上位置,第一页看不到教育经历,hr基本直接扔掉了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务