• uva 11667 Problem B Income Tax Hazard (II)


    练比赛的时候uva挂了,所以整场比赛都没怎做,不过作为一个做队里数学的人,当时没很快的给出解法真是太蒟蒻了。

    题意很简单,是纳税的模型,每个人薪水根据阶段纳税,小于s1的部分不纳税,s1至s2部分按0.1纳税,大于s2的按0.2纳税。题中每组case给出这个人的薪水,和一段区间[min,max],s1与s2平均分布在区间[min,max]中,问这个人平均纳税值的期望。其中min,max都是整数,s1,s2也要求是整数

    You should assume that all distinct combinations of S1 and S2 satisfying the above conditions are equally likely.

    当时没怎么看懂这句话,一位在题意的等可能是,在s1确定的情况下s2等可能分布,在s2确定的情况下s1也等可能分布,最后发现两种情况互相矛盾,才理解了题目的真正意思,就是所以满足区间限制的[s1,s2]都是相同概率的,这样就是用种数除以总情况数,套用期望的定义公式就可以求解了。前往不要怕难算,算着算着,你就会发现本来一位要O(n^2)的算法,居然可以推出O(1)求解的公式的。分来情况见代码救知道了

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cmath>
     4 #include<algorithm>
     5 #include<cstring>
     6 using namespace std;
     7 
     8 int main(){
     9     long long m, minn, maxx;
    10     int cas=1;
    11     long long s1, s2;
    12     double ans;
    13     while(~scanf("%lld%lld%lld",&m,&minn,&maxx)&&(m||minn||maxx)){
    14         ans = 0;
    15         if(m<=minn){
    16             printf("Case %d: %.2lf\n",cas++,ans);continue;
    17         }
    18         if(m<=maxx){
    19             ans += 0.1*(maxx-m+1)*(m*(m-minn+1)-(minn+m)*(m-minn+1)/2);
    20             ans += 0.05*(1+m-minn)*(m-minn)/2+0.15*(m-minn)*(m-minn+1)*(2*(m-minn)+1)/6;
    21         }
    22         else{
    23             ans += (maxx+1)*(0.2*m-0.05*maxx)*(maxx-minn+1)-(0.2*m+0.1*maxx+0.15)*(maxx+minn)*(maxx-minn+1)/2+0.15/6*(maxx*(maxx+1)*(2*maxx+1)-(minn-1)*minn*(2*minn-1));
    24         }
    25         long long k = (maxx-minn+1)*(maxx-minn+2)/2;
    26         ans = ans/k;
    27         printf("Case %d: %.2lf\n",cas++,ans);
    28     }
    29     return 0;
    30 }
  • 相关阅读:
    DXF文件格式理解
    Qt Creator调试命令行参数
    qt编译错误:invalid new-expression of abstract class type "*"
    dxf文件解析库libdxf初探
    ubuntu linux编译libdxfrw
    CAD DWG/DXF文件C++解析库libdxfrw
    AutoCAD版本dxf文件与dxflib解析库支持探索
    Linux 6种日志查看方法(转)
    码率、分辨率、帧率和画质计算单位时间码流大小(转)
    纯手工打造车载车牌识别检测系统(转)
  • 原文地址:https://www.cnblogs.com/celia01/p/2645763.html
Copyright © 2020-2023  润新知