专栏首页个人学习总结做题总结——Delayed Work

做题总结——Delayed Work

做题总结——Delayed Work

原题

题意分析:

这道题目是来计算最低的支付金额,该金额由工人的工资和罚款两部分组成。根据题意描述可知,工资的表达式:MX,罚款的表达式:(KP)/M,因此总金额表达式:MX+(KP)/M,这里K、P、X都是已知的,则该表达式变成了关于M的一个对勾函数,又因为M>0,则根据对勾函数的性质,当M=sqrt((KP)/X)时该表达式取得最小值,但是由于M必须是整数,所以可以在M分别是(int)sqrt((KP)/X)和(int)sqrt((K*P)/X)+1代入验证(可以根据函数图像,由于M必须是整数,所以比较离最小值点最近的两个整数,当然求出来的最小值点也可能恰好是整数,这样就多比较了一次,不过也没关系,哪能这么恰好QAQ),求出值更小的就是所求的最低支付金额

许多题目就是需要一些对应的数学知识,解决起来才能够游刃有余,所以先想要学号算法必须学好数学啊…

代码实现

#include<bits/stdc++.h>      //万能头文件
using namespace std;
int main()
{
    double k,p,x;
    cin>>k>>p>>x;
    //离最小值点最近的两个正整数
    int a=(int)sqrt((k*p)/x);      
    int b=a+1;
    double s1,s2;
    //分别代入计算两个整数点的值,也就是两个点对应的支付金额
    s1=((k*p)/a)+x*a;
    s2=((k*p)/b)+x*b;
    if(s1>s2)
    {
        printf("%.3lf\n",s2);
    }
    else
    {
        printf("%.3lf\n",s1);
    }
    //system("pause");
    return 0;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用beanstalkd实现定制化持续集成过程中pipeline

    持续集成是一种项目管理和流程模型,依赖于团队中各个角色的配合。各个角色的意识和配合不是一朝一夕能练就的,我们的工作只是提供一种方案和能力,这就是持续集成能力的服...

    用户1225216
  • Threading in Python-

    原文是2.x版本的,然后应该是英文的.我在学习的过程中,同时改成python 3.3并且改成中文,引入一些自己的理解.

    py3study
  • zephyr 工作队列(work queue)

    zephyr中工作队列是基于线程的,简单来说,就是有一个线程一直在等待工作队列的api发来的工作项,当有工作项时(一个待 执行的函数)就处理(把函数调用了),当...

    无限之生
  • 做题总结——Pawn’s Revenge

    这道题目自己一开始时也没有思路(后来才发现其实也并不难,实在是学的不太好),后来从网上查找了一些资料,大概明白了这道题目的思路。这道题目是在已经有且只有一个K棋...

    用户8224910
  • 做题总结—— Latin Squares

    题目就是输入一个二维数组(用来表示矩阵),判断对于矩阵中的每一个数字是否在该数字所在的行、所在的列的只出现一次(相当于数独的概念)。如果是的话,则该矩阵是拉丁方...

    用户8224910
  • 做题总结——Fear Factoring

    开始自己的做法是特别愚蠢的 暴力破解法,也就是分别枚举[a,b]区间里每一个数的因数,最后累加起来,可想而知这种做法肯定是不对的。后面听了学长的讲解,这道题一共...

    用户8224910
  • 扒开 Linux 中断的底裤之 workqueue

    workqueue 是除了 softirq 和 tasklet 以外最常用的下半部机制之一。workqueue 的本质是把 work 交给一个内核线程,在进程上...

    刘盼
  • 做题总结——中位数

    这道题目题意其实并不理解,相当于在插入数据的过程中动态求中位数,每当插入奇数个数据时就求这所有奇数个数据的中位数。

    用户8224910
  • 做题总结——造房子

    用户8224910
  • Dask教程:使用dask.delayed并行化代码

    在本节中,我们使用 Dask 和 dask.delayed 并行化简单的 for 循环样例代码。通常,这是将函数转换为与 Dask 一起使用所需的唯一函数。

    郭好奇同学
  • PHP7生产环境队列Beanstalkd用法详解

    为什么要用呢,有什么好处?这应该放在最开头说,一件东西你只有了解它是干什么的,适合干什么,才能更好的与自己的项目相结合,用到哪里学到哪里,学了不用等于不会,我们...

    砸漏
  • 做题总结——younik要排号

    这道题目理解起来不难,就相当于求younik之前有多少个不同的人,再加上一,就是younik是第几个被叫到的人。

    用户8224910
  • 做题总结——使徒袭来

    这道题目利用数学知识可以知道,当三个正整数的值相等时,三个数的和最小,相当于a=b=c=n^(1/3)时,(a+b+c) min=3*n ^(1/3),编写代码...

    用户8224910
  • 做题总结——虚空之力

    这道题目是求出一个字符串中能够挑选出对应字符从而组成指定字符串(“king” 或 “kinging”)的数量

    用户8224910
  • 做题总结——走出迷宫

    从起点开始,分别向上、下、左、右四个方向进行搜索,如果搜索到了终点,则说明能够到达终点;否则,将该点压入队列之中,继续进行下面的搜索,并将该点标记成已访问。

    用户8224910
  • Delayed Message 插件实现 RabbitMQ 延迟队列

    对于延迟队列不管是 AMQP 协议或者 RabbitMQ 本身是不支持的,之前有介绍过如何使用 RabbitMQ 死信队列(DLX) + TTL 的方式来模拟实...

    五月君
  • 简单的 HTTP 调用,为什么时延这么大?

    最近项目测试遇到个奇怪的现象,在测试环境通过 Apache HttpClient 调用后端的 HTTP 服务,平均耗时居然接近 39.2ms。可能你乍一看觉得这...

    kirito-moe
  • 简单的 HTTP 调用,为什么时延这么大?

    最近项目测试遇到个奇怪的现象,在测试环境通过 Apache HttpClient 调用后端的 HTTP 服务,平均耗时居然接近 39.2ms。可能你乍一看觉得这...

    涤生
  • Java-BlockingQueue 接口5大实现类的使用场景

    BlockingQueue即我们所说的阻塞队列,它的实现基于ReentrantLock,通常我们谈及到阻塞队列,都会和生产者/消费者模式关联起来(这是最常用的场...

    每天学Java

扫码关注云+社区

领取腾讯云代金券