码迷,mamicode.com
首页 > 其他好文 > 详细

HDOJ: 5595

时间:2015-12-12 21:33:13      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

问题描述
某一天,GTW听了数学特级教师金龙鱼的课之后,开始做数学《从自主招生到竞赛》。然而书里的题目太多了,GTW还有很多事情要忙(比如把妹),于是他把那些题目交给了你。每一道题目会给你一个函数fxax2bxcf(x)=ax?2??+bx+c,求这个函数在整数区间lr[l,r]之间的最值。
输入描述
第一行一个整数T,表示数据组数。(T1000T1000)
对于每一组数据,有一行,共五个整数a,b,c,l,r。(∣a∣100∣b∣100∣c∣100∣l∣100∣r∣100lra100,b100,c100,l100,r100,lr)
输出描述
对于每一组数据,共一行两个整数max,min,表示函数在整数区间lr[l,r]中的最大值和最小值。
输入样例
1
1 1 1 1 2
输出样例
7 3
Hint
f13f27f?1??=3,f?2??=7,最大值=7,最小值=3

#include <iostream>

#include <cstdio>

using namespace std;

 

int main()

{

    int T;

    int a,b,c,l,r,i;

    int max,min;

    cin>>T;

    

    while (T--) {

        cin>>a>>b>>c>>l>>r;//输入数据

        max=(int)a*l*l+b*l+c;

        min=(int)a*l*l+b*l+c;

        

        for(i=l;i<=r;i++)//利用函数在区间上判断,不过注意下整数区间

        {

            if(max<(int)a*i*i+b*i+c)

                max=(int)a*i*i+b*i+c;

            if(min>(int)a*i*i+b*i+c)

                min=(int)a*i*i+b*i+c;

        }

        cout<<max<<" "<<min<<endl;

        

    }

    return 0;

}

HDOJ: 5595

标签:

原文地址:http://www.cnblogs.com/xiangrutt/p/5041753.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!