万水千山粽是情

时间: 1ms        内存:128M

描述:

西晋新平太守周处所著《风士记》有云:仲夏端午,烹鹜角黍。”这里说的角黍,就是粽子。每年农历五月初,中国百姓家家浸糯米、洗粽叶、包粽子,花色品种繁多。从馅料看,北方多包小枣的北京枣粽;南方则有豆沙、鲜肉、八宝、火腿、蛋黄等多种馅料。

看饿了吧?临近端午节,食堂的粽子大促销,买三送一,买五送二。现在你想用手里的钱,买到尽可能多的粽子,应该怎么做呢?

输入:

第一行输入测试数据的组数T

第二行到第T+1行,每行测试数据包含两个整数AB,分别表示手中现有的钱数和一只粽子的价格。

数据范围1<=T<=1000<=A<=10001<B<10

输出:

输出T行,每行包含一个整数,表示能买到的最多的粽子个数,如果有没花完的钱就存着以后用。

示例输入:

2
11 3
22 3

示例输出:

4
9

提示:

参考答案(内存最优[1092]):

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    int n;
    int s,a;
    scanf("%d",&n);
    while(n>0)
    {
        scanf("%d %d",&s,&a);
        int z=0,x=0,c;
        c=z=s/a;
        while(z>=3)
        {
            if(z>=5)
            {
                x+=2;
                z=z-5;
                continue;
            }
            else
            {
                x+=1;
                z=z-3;
                continue;
            }
        }
        printf("%d\n",c+x);
        n--;
    }
    return 0;
}

参考答案(时间最优[0]):

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int a,b;
        cin>>a>>b;
        int m=0,n=0,ans=0;
        m=a/(5*b);
        ans=7*m;
        n=a-5*b*m;
        m=n/(3*b);
        ans+=4*m;
        n-=(3*m*b);
        ans+=(n/b);
        cout<<ans<<endl;
    }
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。