Discount

来源:互联网 发布:用友t3软件多少钱 编辑:程序博客网 时间:2024/05/22 11:47

Discount

Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other)
Total Submission(s) : 17   Accepted Submission(s) : 12

Font: Times New Roman | Verdana | Georgia

Font Size:  

Problem Description

商场打折啦!!!ACM队的美眉们都按捺不住激动的心情,纷纷杀到商场血拼去了。你心仪的一个美眉挑选了半天,想买一件衣服和一双靴子。商场的折扣有两种,只能从中间选择一种方式。
1. 全部商品价格打折。比如一件衣服200块,靴子100块,打6折,就只需要180块钱。
2. 返券。比如说每买100块的东西,返回100块的购物券,可以用这个购物券再去买其他东西。但是用购物券支付商品,是不能找零的,同时商品也不能打折和返券。但不够的话可以再支付剩余的钱。比如说衣服200块,靴子100块,买100送150。这样只需要先支付100元买下靴子,获得150元的券,再多支付50块,就能买下衣服,一共花去了150元。
你们都知道美眉们在计算上面都比较弱,请作为护花使者的你帮她算一算,最少需要支付的钱数。

Input

第一行是一个整数K,表示样例的个数。
每个样例占两行,第一行是三个整数,第一个为R,折扣率(1<=R<=99),表示折扣价位为原价的R%,向下取整。第二和三个整数C和Q,表示每买C(1<= C <= 100)元钱,返回Q(1<=Q<=200)元购物券。注意不够的部分是不返券的,比如买100送100券,你支付了199元,也只能返回100元购物券。
第二行是两个整数A和B(1<=A,B<=1000),表示衣服和靴子的价格。

Output

每行输出一个整数,及最小的支付金额。

Sample Input

360 100 100399 25870 100 200399 25870 100 100399 258

Sample Output

394258399
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n,r,c,q,a,b;
    scanf("%d",&n);
    while (n--)
    {
        int x=0,y=0,t=0,s1=0,s2=0,s3=0;
        scanf("%d%d%d",&r,&c,&q);
        scanf("%d%d",&a,&b);
        s1=(a+b)*r/100;
        s2=(a/c)*q;
        s3=(b/c)*q;
        if (s2>=b)
            x=a;
        else
            x=(a+b-s2);
        if (s3>=a)
            y=b;
        else
            y=(a+b-s3);
        if (x>y)
            t=y;
        else
            t=x;
        if (s1>t)
        printf("%d\n",t);
        else
            printf("%d\n",s1);
    }
    return 0;
}
原创粉丝点击