zoukankan      html  css  js  c++  java
  • 佳肴 (Standard IO)

    题意/Description:

           佳肴就是非常美味的菜的意思,佳肴最关键的是选择好原料。
      现在有N种原料,每种原料都有酸度S和苦度B两个属性,当选择多种原料时,总酸度为每种原料的酸度之积,总苦度为每种原料的苦度之和。
      正如大家所知,佳肴是既不酸也不苦的,因为要保证所选的原料使得总酸度和总苦度差的绝对值最小。
      由于佳肴不能只有水,所以必须至少选择一种佳肴。

     

    读入/Input

           输入第一行包含一个整数N(1<=N<=10),表示原料的种数。
      接下来N行每行包含两个用一个空格隔开的整数,分别表示酸度和苦度。
      输入数据保证如果所有原料都选上,总酸度和总苦度不会超过10^9。

     

    输出/Output

           输出总酸度和总苦度最小的差。

     

    题解/solution

           水字,暴搜也可以,组合也可以。下面是组合。

     

    代码/Code

    const
      maxn=20;
    var
      n,i,r,min:longint;
      ans,x,y:array[0..maxn] of longint;
    
    procedure dfs(k,p:longint);
    var
      i,sx,sy:longint;
    begin
      if k=r+1 then
        begin
          sx:=1; sy:=0;
          for i:=1 to r do
            begin
              sx:=sx*x[ans[i]];
              sy:=sy+y[ans[i]];
            end;
          if abs(sx-sy)<min then min:=abs(sx-sy);
          exit;
        end;
      for i:=p downto 1 do
        begin
          ans[k]:=i;
          dfs(k+1,i-1);
        end;
    end;
    
    begin
      readln(n);
      for i:=1 to n do
        readln(x[i],y[i]);
      min:=maxlongint;
      for r:=1 to n do
        dfs(1,n);
      write(min);
    end.



  • 相关阅读:
    9-单表查询
    02-数据库概述
    01-MySql的前戏
    mysql+centos7+主从复制
    Mac下安装ipython与jupyter
    python开发之virtualenv与virtualenvwrapper讲解
    python操作redis
    权限管理具体代码实现
    docker入门
    多用判断&&
  • 原文地址:https://www.cnblogs.com/zyx-crying/p/9319657.html
Copyright © 2011-2022 走看看