zoukankan      html  css  js  c++  java
  • 100c之17:平分七筐鱼

    100c之17:平分七筐鱼

    100c之17:平分七筐鱼

    Table of Contents

    1 问题

    加以丙三位渔夫出海打渔,他们随船带了21只箩筐。当晚返航时,他们发现有7筐装满鱼,还有7筐只装了半筐鱼,另外七筐没有鱼。由于他们没有秤只好认为这七筐鱼的重量是相等的。七个半筐鱼的重量是相等的。在不把鱼到处来的前提下,怎样将鱼和筐平分为三份?

    2 分析

    目标:每人3.5桶鱼,7个桶。同时要避免重复方案

    3 解决方案

    使用一个三乘三的数组保存最终的结果。

     1:  /**
     2:   * @file   017average7fish.c
     3:   * @author Chaolong Zhang <emacsun@163.com>
     4:   * @date   Fri May 17 19:58:10 2013
     5:   * 
     6:   * @brief  加以丙三位渔夫出海打渔,他们随船带了21只箩筐。当晚返航时,他们发现有7筐装满鱼,还有7筐只装了半筐鱼,另外七筐没有鱼。由于他们没有秤只好认为这七筐鱼的重量是相等的。七个半筐鱼的重量是相等的。在不把鱼到处来的前提下,怎样将鱼和筐平分为三份?
     7:   *  
     8:   * 最终的结果是: 每人3.5筐鱼和七个筐。
     9:   */
    10:  #include <stdio.h>
    11:  int main(int argc, char *argv[])
    12:  {
    13:    int a[3][3],count;
    14:    int i,j,k,m,n,flag;
    15:    for (i=0; i <= 3; ++i)
    16:    {
    17:      a[0][0] = i;
    18:      for (j=i; j <= 7-i && j<=3; ++j)
    19:      {
    20:        a[1][0] = j;
    21:        if ((a[2][0]=7-j-a[0][0])>3) continue;
    22:        if (a[2][0]<a[1][0]) break;
    23:        for (k=1; k <= 5; k+=2)
    24:        {
    25:          a[0][1] =k;
    26:          for (m=1; m < 7-k; m+=2)
    27:          {
    28:            a[1][1]=m;
    29:            a[2][1]=7-k-m;
    30:            for (flag=1,n=0; flag && n<3; n++)
    31:            {
    32:              if (a[n][0]+a[n][1]<7 && a[n][0]*2+a[n][1]==7)
    33:              {
    34:                a[n][2] = 7 - a[n][0] - a[n][1];
    35:              }
    36:              else flag=0;
    37:            }
    38:            if(flag)
    39:            {
    40:              printf ("No.%d method     Full basket  semi-basket Empty \n", ++count);
    41:              for (n=0; n < 3; n++)
    42:              {
    43:                printf ("fisher %c:  %d  %d  %d\n",'A'+n, a[n][0],a[n][1],a[n][2]);
    44:              }
    45:            }
    46:          }
    47:        }
    48:      }
    49:    }
    50:    return 0;
    51:  }
    

    Date:

    Author: emacsun

    Org version 7.8.02 with Emacs version 23

    Validate XHTML 1.0
  • 相关阅读:
    Qt编译出错:“Cannot find file...... .pro."
    谈论如何有效地保护你的数据
    购书网
    VC非模态对话框创建和销毁
    在GUI程序中使用控制台的两种方法
    fatal error C1010: unexpected end of file while looking for precompiled header directive
    burp抓取手机包
    为firefox添加flash插件
    msfvenom生成linux后门
    kali下操作 Apache2
  • 原文地址:https://www.cnblogs.com/chaolong/p/3086086.html
Copyright © 2011-2022 走看看