zoukankan      html  css  js  c++  java
  • for循环练习

    羽毛球拍15元,球3元,水2元。200元每种至少一个,有多少种买法

    解题思路

    穷举法
    先确定条件的大致范围,并在范围内挨个验证情况,
    然后根据所需要的条件过滤出所需的条件。

    羽毛球拍最多买13个,球最多买66个,水最多买100个

    方法一

        int count = 0; //循环次数
                int num = 0;  //多少种买法
                for (int i = 1; i <= 13; i++)     //羽毛球拍最多可以买多少次
                {
                    for (int j = 1; j <= 66; j++)   //球最多可以买多少次
                    {
                        for (int k = 1; k <= 100; k++)  //水最多可以买多少次
                        {
                            count++;
                            if (i * 15 + j * 3 + k * 2 == 200) //各个商品的价格相加登录总价格
                            {
                                 num++;
                                Console.WriteLine("羽毛球拍:{0},球:{1},水:{2},共有{3}次买法", i, j, k, num);
                            }
    
                        }
    
                    }
    
                }

    方法二

    比方法一效率高
    先拿着钱和羽毛球拍的价格计算最多可以买多少个羽毛球拍,
    然后拿着每个羽毛球拍的花的钱计算出球可以买多少个,
    最后拿着羽毛球拍和球花的钱计算出水可以买多少瓶水。

             int money = 200;
                int f1m = maney / 15;   
    
                for (int a = 1; a <= f1m; a++)
                {
                    int f2m = (maney - (15 * a)) / 3;
                    for (int b = 1; b <= f2m; b++)
                    {
                        int c = (maney - (15 * a + b * 3)) / 2;
                        if (a * 15 + b * 3 + c * 2 == maney)
                        {
                            num++;
                            Console.WriteLine("羽毛球拍{0},球{1},水{2},共有:{3}", a, b, c, num);
                        }
    
                    }
                }  
                    Console.ReadKey();
  • 相关阅读:
    mysql添加用户和密码
    常用正则表达式
    锐捷配置telnet
    Cisco配置aaa验证
    华为交换机端口镜像配置
    华为交换机boot默认密码
    python自动化运维常用模块安装
    python交互模式下tab键自动补全
    python脚本检查TCP端口是否正常
    python脚本获取主机Mac地址
  • 原文地址:https://www.cnblogs.com/tianranhui/p/10094608.html
Copyright © 2011-2022 走看看