zoukankan      html  css  js  c++  java
  • 【noiOJ】p7939

    09:膨胀的木棍

    总时间限制: 
    1000ms
     
    内存限制: 
    65536kB
    描述

    当长度为L的一根细木棍的温度升高n度,它会膨胀到新的长度L'=(1+n*C)*L,其中C是热膨胀系数。

    当一根细木棍被嵌在两堵墙之间被加热,它将膨胀形成弓形的弧,而这个弓形的弦恰好是未加热前木棍的原始位置。

    你的任务是计算木棍中心的偏移距离。

    输入
    三个非负实数:木棍初始长度(单位:毫米),温度变化(单位:度),以及材料的热膨胀系数。
    保证木棍不会膨胀到超过原始长度的1.5倍。
    输出
    木棍中心的偏移距离(单位:毫米),保留到小数点后第三位。
    样例输入
    1000 100 0.0001
     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cmath>
     4 #define pi=3.14159263589793
     5 using namespace std;
     6 int main()
     7 {
     8     double l,n,c,ll,left,mid,right;
     9     scanf("%lf%lf%lf",&l,&n,&c);
    10     ll=(1+n*c)*l;
    11     left=0;
    12     right=asin(1.0);
    13     while (right-left>1e-14)
    14     {
    15         mid=(right+left)/2;
    16         if (ll*sin(mid)/mid<=l)
    17             right=mid;
    18         else
    19             left=mid;
    20     }
    21     printf("%.3lf",l/2*tan(left/2));
    22     return 0;
    23 } 
    网上找的公式,因为不知道C++的sin是弧度制计算,且不会弧度制。。
    —Anime Otaku Save The World.
  • 相关阅读:
    Python超简单的HTTP服务器
    浅析python的string.Template
    virtualenv python虚拟环境搭建
    python 爬虫-sohu抓小说
    python RE模块
    linux 修改系统时间
    Linux下查看文件和文件夹大小
    python os模块使用方法
    python文件操作 seek(),tell()
    python encode decode unicode区别及用法
  • 原文地址:https://www.cnblogs.com/DMoon/p/5004431.html
Copyright © 2011-2022 走看看