• 【NOIP2012模拟10.9】电费结算


    Description

    WZK最近靠租房发家致富了。作为WZK老同学的你也要租房,于是WZK决定不要房租,但是电费还得付。以下是用电价格:

    这里写图片描述

    举个例子吧。如果你用电为10123千瓦时,那么要付2 * 100 + 3 * 9900 + 5 * 123 = 30515块钱(好贵)。
    
    到结算电费的日子了,可是WZK家里只有一个总电表,也就是统计你和WZK总共用的电量。但是WZK有办法告诉你以下信息:
    
    1).如果按照总电表来看要交给供电局的钱A。(也就是两个人用电量加起来一起算钱)
    
    2).你和WZK如果分开付的话,你们付的钱的差值B。
    
    现在你想知道如果你单独算钱的话,需要付多少钱。当然,你的用电量不会比WZK多。
    
    举个例子:如果你们一起算钱要付1100,并且如果分开来算,你们的差值是300的话,那么你用了150kwh,WZK用了250kwh。让我们来验算一下:你们一共用电400kwh,所以要付2 * 100 + 3 * 300 = 1100,你单独要付2 * 100 + 3 * 50 = 350,WZK单独要付2 * 100 + 3 * 150 = 650。所以最后,你只需要告诉我你单独要付350元。
    

    Input

    输入仅一行,包含两个整数A和B(1 ≤ A, B ≤ 10^9),含义同上。 输出描述: 输出仅一行一个整数,代表你单独算需要付的钱。数据保证解唯一。

    Output

    输出仅一行一个整数,代表你单独算需要付的钱。数据保证解唯一。

    题解

    算出总花费的电,然后可以二分,可以暴力。

    代码

    var
      zd,n,k,num:longint;
    function find(nn:longint):longint;
    begin
      case nn of
        1..100:find:=nn*2;
        101..10000:find:=200+(nn-100)*3;
        10001..1000001:find:=2*100+3*9900+(nn-10000)*5;
        else find:=2*100+3*9900+5*990000+(nn-1000000)*7;
      end;
    end;
    
    procedure try1;
    var
      nn:longint;
    begin
      zd:=0; nn:=n;
      if nn<=200 then zd:=zd+nn div 2 else
        begin
          zd:=zd+100; nn:=nn-200;
          if nn<=9900*3 then zd:=zd+nn div 3 else
            begin
              zd:=zd+9900; nn:=nn-3*9900;
              if nn<=990000*5 then zd:=zd+nn div 5 else
                begin
                  zd:=zd+990000; nn:=nn-5*990000;
                  zd:=zd+nn div 7;
                end;
            end;
        end;
    end;
    
    function main:longint;
    var
      i,ansa,ansb,z:longint;
    begin
      ansa:=0; ansb:=find(zd);
      for i:=1 to zd div 2 do
        begin
          ansa:=find(i);
          ansb:=find(zd-i);
          if ansb-ansa=k then exit(ansa);
        end;
    end;
    
    begin
      readln(n,k);
      try1;
      write(main);
    end.
    
    
  • 相关阅读:
    CentOS安装python setuptools and pip
    Memcached集群:Magent缓存代理使用
    PHP上传类 图片上传 upload class实现image crop resize 缩略图
    CentOS全自动一键安装PHP,MySQL,phpmyadmin与Nginx
    【转】浅析linux内存模型
    【转】深入浅出异步I/O模型
    【转】客户/服务器程序设计范式
    【转】如何保证睡眠的情况下把各种事情做好
    【转】非教育网中IPv4网络访问IPv6资源
    busybox介绍
  • 原文地址:https://www.cnblogs.com/zyx-crying/p/9319571.html
Copyright © 2020-2023  润新知