• CCF-CSP-201709-1 打酱油


    问题描述:

    试题编号: 201709-1
    试题名称: 打酱油
    时间限制: 1.0s
    内存限制: 256.0MB
    问题描述:

    问题描述

      小明带着N元钱去买酱油。酱油10块钱一瓶,商家进行促销,每买3瓶送1瓶,或者每买5瓶送2瓶。请问小明最多可以得到多少瓶酱油。

    输入格式

      输入的第一行包含一个整数N,表示小明可用于买酱油的钱数。N是10的整数倍,N不超过300。

    输出格式

      输出一个整数,表示小明最多可以得到多少瓶酱油。

    样例输入

    40

    样例输出

    5

    样例说明

      把40元分成30元和10元,分别买3瓶和1瓶,其中3瓶送1瓶,共得到5瓶。

    样例输入

    80

    样例输出

    11

    样例说明

      把80元分成30元和50元,分别买3瓶和5瓶,其中3瓶送1瓶,5瓶送2瓶,共得到11瓶。

    看到题目下意识的就把买3瓶换1瓶等价成了3个空瓶送1瓶,结果第二个样例错了。再读一遍题,发现他们细微的区别是买3瓶换1瓶得到的1瓶不能再用,3个空瓶送1瓶得到的1瓶还能用。

    AC代码:

     1 #include<iostream>
     2 #include<string>
     3 #include<algorithm>
     4 #include<iomanip>
     5 #include<cmath>
     6 using namespace std;
     7 int main()
     8 {
     9     //钱数,总酱油瓶数,“空瓶数 ” 
    10     int N,num1=0,num2=0;
    11     cin>>N;
    12     num2=num1=N/10;
    13     while(num2>=3)
    14     {
    15         if(num2>=5) 
    16         {
    17             int t=num2/5;
    18             num1+=2*t;
    19             num2-=5*t;
    20             //num2+=2*t;    
    21         }
    22         else 
    23         {
    24             int t=num2/3;
    25             num1+=t;
    26             num2-=3*t;
    27             //num2+=t;
    28         }
    29     }
    30     cout<<num1;
    31 }
    View Code
  • 相关阅读:
    Medication Reconciliation Overview
    The Info-Button Standard: Bring Meaningful Use To the Patient
    Configuring Time in Windows 7 and Win 200
    oracle补齐日期
    mysql-proxy
    Oracle:Authid Current_User的使用
    oracle的sqlldr常见问题
    hive的select重命名字段显示成中文
    python访问hive
    禁用SSL v2.0、SSL v3.0协议
  • 原文地址:https://www.cnblogs.com/wangzhebufangqi/p/12796211.html
Copyright © 2020-2023  润新知