• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            心如止水
            Je n'ai pas le temps
            posts - 400,comments - 130,trackbacks - 0
            題目意思很簡單,求拋物線和直線圍成的區(qū)域的面積。
            積分大牛都是0msAC的……不怎么會積分,于是直接龍貝格定積分求值。
            以下是我的代碼:
            /*
             * Author:  lee1r
             * Created Time:  2011/8/23 18:19:49
             * File Name: hdu1071.cpp
             
            */
            #include
            <iostream>
            #include
            <sstream>
            #include
            <fstream>
            #include
            <vector>
            #include
            <list>
            #include
            <deque>
            #include
            <queue>
            #include
            <stack>
            #include
            <map>
            #include
            <set>
            #include
            <bitset>
            #include
            <algorithm>
            #include
            <cstdio>
            #include
            <cstdlib>
            #include
            <cstring>
            #include
            <cctype>
            #include
            <cmath>
            #include
            <ctime>
            #define L(x) ((x)<<1)
            #define R(x) ((x)<<1|1)
            #define Half(x) ((x)>>1)
            #define Lowbit(x) ((x)&(-(x)))
            using namespace std;
            const int kInf(0x7f7f7f7f);
            const double kEps(1e-8);
            typedef unsigned 
            int uint;
            typedef 
            long long int64;
            typedef unsigned 
            long long uint64;

            bool scanf(int &num)
            {
                
            char in;
                
            while((in=getchar())!=EOF && (in>'9' || in<'0'));
                
            if(in==EOF) return false;
                num
            =in-'0';
                
            while(in=getchar(),in>='0' && in<='9') num*=10,num+=in-'0';
                
            return true;
            }

            double A,B,C;

            double f(double x)
            {
                
            return (A*x*x+B*x+C);
            }

            double Romberg(double a,double b,double eps)
            {
                
            #define MAX_N 1000
                
            int min,tmp2;
                
            double d,tmp4,R[2][MAX_N];
                
                
            for(int i=0;i<MAX_N;i++)
                    R[
            0][i]=R[1][i]=.0;
                d
            =b-a;
                min
            =(int)(log(d*10.0)/log(2.0));
                R[
            0][0]=0.5*d*(f(a)+f(b));
                tmp2
            =1;
                
            for(int i=2;i<MAX_N;i++)
                {
                    R[
            1][0]=.0;
                    
            for(int j=1;j<=tmp2;j++)
                        R[
            1][0]+=f(a+d*((double)j-0.5));
                    R[
            1][0]=(R[0][0]+d*R[1][0])*0.5;
                    tmp4
            =4.0;
                    
            for(int j=1;j<i;j++)
                    {
                        R[
            1][j]=R[1][j-1]+(R[1][j-1]-R[0][j-1])/(tmp4-1.0);
                        tmp4
            *=4.0;
                    }
                    
            if((fabs(R[1][i-1]-R[0][i-2])<eps) && (i>min))
                        
            return R[1][i-1];
                    d
            *=0.5;
                    tmp2
            *=2;
                    
            for(int j=0;j<i;j++)
                        R[
            0][j]=R[1][j];
                }
                
            return R[1][MAX_N-1];
            }

            int main()
            {
                #ifndef ONLINE_JUDGE
                
            //freopen("data.in","r",stdin);
                #endif

                
            int T;
                scanf(T);
                
            while(T--)
                {
                    
            double x0,y0,x1,y1,x2,y2;
                    scanf(
            "%lf%lf%lf%lf%lf%lf",&x0,&y0,&x1,&y1,&x2,&y2);
                    B
            =(y2-y1-(x2*x2-x1*x1)*(y1-y0)/(x1*x1-x0*x0))/(x2-x1-(x2*x2-x1*x1)/(x1+x0));
                    A
            =(y1-y0-(x1-x0)*B)/(x1*x1-x0*x0);
                    C
            =y0-A*x0*x0-B*x0;
                    B
            -=(y2-y1)/(x2-x1);
                    C
            +=x1*(y2-y1)/(x2-x1)-y1;
                    
                    printf(
            "%.2f\n",Romberg(x1,x2,kEps));
                }
                
                
            return 0;
            }
            posted on 2011-08-23 18:56 lee1r 閱讀(332) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:數(shù)學/數(shù)論
            日韩人妻无码一区二区三区久久99| 无码国内精品久久综合88| 久久福利青草精品资源站| 国内精品久久国产大陆| 久久99久久成人免费播放| 超级碰碰碰碰97久久久久| 精品999久久久久久中文字幕| 久久播电影网| 久久精品国产亚洲欧美| 亚洲va久久久久| 亚洲一区中文字幕久久| 亚洲av成人无码久久精品| 欧美色综合久久久久久| 狠狠色婷婷综合天天久久丁香| 伊人久久大香线蕉无码麻豆| 好属妞这里只有精品久久| 久久久久久久久久久| 久久久久综合国产欧美一区二区| 亚洲国产精品无码久久一区二区| 久久久综合香蕉尹人综合网| 一本久久a久久精品综合夜夜| 无码人妻精品一区二区三区久久| 久久综合视频网站| 久久久精品国产亚洲成人满18免费网站| 性欧美大战久久久久久久久| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 久久精品女人天堂AV麻| 久久精品国产网红主播| 久久综合给合久久狠狠狠97色69| 欧美一级久久久久久久大片 | 欧美粉嫩小泬久久久久久久| 久久久久国产精品| 国产成人无码精品久久久免费| 伊人久久大香线蕉综合影院首页 | 亚洲国产成人精品91久久久 | 久久久久久久亚洲精品| 久久久久久久国产免费看| 亚洲国产精品成人AV无码久久综合影院 | 成人精品一区二区久久| 国产成人无码精品久久久免费 | 久久免费99精品国产自在现线|