zoukankan      html  css  js  c++  java
  • 微软买书问题

    1.算法思想

    先用枚举法把依次把每种情况从大到小写出来,结果就会发现到8的时候情况就发生变化,以10为1个轮回,除10取余。

    2.代码

    #include<iostream>
    using namespace std;
    #define N 100
    int n;
    void main()
    {
        cout << "请输入你要购买的书的数目:";
        cin >> n;
        int i,j;
        i = n % 10;
        j = (n - i) / 10;
        if (i == 8)
        {
            if (j == 0)
            {
                cout << "应该购买5卷中任意4卷,每卷" << 2 << "";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j << "本,再挑4种不同的卷每卷" << 2 << "";
            }
        
        }
        else if (i == 0)
        {
            cout << "应该购买5卷,每卷" << 2*j << "";
        }
        else if (i == 1)
        {
            if (j == 0)
            {
                cout << "应该购买5卷中任意1卷"<< 1 << "";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j << "本,再购买5卷中任意1卷" << 1 << "";
            }
        }
        else if (i == 2)
        {
            if (j == 0)
            {
                cout << "应该购买5卷中任意2卷每卷" << 1 << "";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j<< "本,再购买5卷中任意2卷每卷" << 1 << "";
            }
        }
        else if (i == 3)
        {
            if (j == 0)
            {
                cout << "应该购买5卷中任意3卷每卷" << 1 << "";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j << "本,再购买5卷中任意3卷每卷" << 1 << "";
            }
        }
        else if (i == 4)
        {
            if (j == 0)
            {
                cout << "应该购买5卷中任意4卷每卷" << 1 << "";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j << "本,再购买5卷中任意2卷每卷" << 1 << "";
            }
        }
        else if (i == 5)
        {
            if (j == 0)
            {
                cout << "应该购买5卷每卷" << 1 << "";
            }
            else
            {
                cout << "买5种不同的卷各" << 2 * j +1<< "";
            }
        }
        else if (i == 6)
        {
            if (j == 0)
            {
                cout << "应该购买5卷每卷" << 1 << "本,再任意购买1卷1本";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j +1<< "本,再任意购买1卷1本";
            }
        }
        else if (i == 7)
        {
            if (j == 0)
            {
                cout << "应该购买5卷每卷" << 1 << "本,再任意购买2卷每卷1本";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j + 1 << "本,再任意购买2卷每卷1本";
            }
        }
        else if (i == 9)
        {
            if (j == 0)
            {
                cout << "应该购买5卷每卷" << 1 << "本,再任意购买4卷每卷1本";
            }
            else
            {
                cout << "先买5种不同的卷各" << 2 * j + 1 << "本,再任意购买4卷每卷1本";
            }
        }
    }

    3.程序截图

  • 相关阅读:
    伪元素改变placeholder占位符属性的默认样式实例页面
    盒子中margin重叠问题
    html或CSS的图片如何随着网页界面的缩小或放大跟着左右移动 ?
    相对路径与绝对路径
    Html5 Canvas小知识
    dl,dt,dd怎么用
    雪碧图
    linux--mysql图形工具 tora
    apt-get彻底卸载删除软件http://www.tennfy.com/1518.html
    【转】 httpclient 模拟浏览器动作需注意的cookie和HTTP头等信息
  • 原文地址:https://www.cnblogs.com/wanzitou/p/5557355.html
Copyright © 2011-2022 走看看