• POJ2109 Power of Cryptography


    题目链接:https://vjudge.net/problem/POJ-2109

    知识点:  C++语法

    解题思路:

      (double) 的取值范围为 (10^{-307}~10^{308}),小数精度是前(16)位,用 (double) 存储 (p) 时,虽然会产生误差,但其误差范围在 (10^{-15}) 的数量级内。接下来用 (pow(p,1/n)) 求其开 (n) 次方值,由于开方运算不会扩大其误差范围且题目已经规定了该题的答案必为整数值,(10^{-15})这个级别的误差在四舍五入以后对于整数部分的影响可以忽略不计,故直接用(pow())函数即可求出答案。

    AC代码:

     1 #include <cmath>  
     2 #include <cstdio>  
     3 using namespace std;  
     4   
     5 int main(void) {  
     6     double n , p;  
     7     while(scanf("%lf%lf",&n,&p)==2) {  
     8         double tmp = pow(p, 1 / n); 
     9         int k = floor(tmp + 0.5);   // 四舍五入(+0.5后向下取整)  
    10         printf("%d
    ",k);
    11     }  
    12     return 0;  
    13 }  
    “这些年我一直提醒自己一件事情,千万不要自己感动自己。大部分人看似的努力,不过是愚蠢导致的。什么熬夜看书到天亮,连续几天只睡几小时,多久没放假了,如果这些东西也值得夸耀,那么富士康流水线上任何一个人都比你努力多了。人难免天生有自怜的情绪,唯有时刻保持清醒,才能看清真正的价值在哪里。”
  • 相关阅读:
    线上项目部署
    day26 面向对象 单例模式总结
    阿里云服务器,更换操作系统步骤总结
    后端for循环补充
    前端,css
    django-admin 仿写stark组件action,filter筛选过滤,search查询
    7.20晚作业
    用户和群组管理
    7.19 晚作业
    目录和文件管理
  • 原文地址:https://www.cnblogs.com/Blogggggg/p/8448078.html
Copyright © 2020-2023  润新知