zoukankan      html  css  js  c++  java
  • bzoj 1011 近似估计

    开始看这道题的时候没什么思路,后来忍不住看了题解,发现自己真是水啊。。。

    自从学OI来第一次看到用约等的题

    首先我们设w[i]为第i个星球的答案,g[i]为第i个星球受到1-g[i]个星球的引力

    那么我们想办法递推,用w[i]推出w[ii],

    我们设ii=i+t

    那么。。。。那么我还是用手写然后照张照片吧

    /**************************************************************
        Problem: 1011
        User: BLADEVIL
        Language: Pascal
        Result: Accepted
        Time:2428 ms
        Memory:1984 kb
    ****************************************************************/
     
    //By BLADEVIL
    const
        t                               =100;
     
    var
        n                               :longint;
        a                               :extended;
        m, g                            :array[0..100010] of longint;
        w                               :array[0..100010] of extended;
        i, j                            :longint;
         
    begin
        read(n,a);
        for i:=1 to n do read(m[i]);
        for i:=1 to n do g[i]:=trunc(i*a);
        for i:=1 to n do
        begin
            w[i]:=0;
            if g[i]=0 then continue;
            if i<=t then
            begin
                for j:=1 to g[i] do
                    w[i]:=w[i]+m[j]/(i-j);
                w[i]:=w[i]*m[i];
            end else
            begin
                w[i]:=(w[i-t]/m[i-t])*((i-t-(g[i-t]/2))/(i-(g[i-t]/2)));
                for j:=g[i-t]+1 to g[i] do
                    w[i]:=w[i]+m[j]/(i-j);
                w[i]:=w[i]*m[i];
            end;
        end;
        for i:=1 to n do writeln(w[i]:0:6);
    end.
  • 相关阅读:
    POJ
    FZU
    HDU
    HDU
    HDU
    HDU
    Educational Codeforces Round 84 E. Count The Blocks
    B Boundary(由弦求圆)
    D. Maximum Sum on Even Positions(翻转1次,求最大偶数位和)
    E. DeadLee(思维,拓扑图处理)
  • 原文地址:https://www.cnblogs.com/BLADEVIL/p/3433773.html
Copyright © 2011-2022 走看看