Educational Codeforces Round 90 (Rated for Div. 2) 参与排名人数12840
[codeforces 1373A] Donut Shops 选一个还是选一堆
总目录详见https://blog.csdn.net/mrcrack/article/details/103564004
在线测评地址http://codeforces.com/contest/1373/problem/A
Problem | Lang | Verdict | Time | Memory |
---|---|---|---|---|
A - Donut Shops | GNU C++17 | Accepted | 30 ms | 3600 KB |
题目大意:某种商品,在第一个商店里,可以一个一个的买,在第二个商店里,只能几个一起买。问,买几个商品时,第一个商店花的钱少,买几个商品时,第二个商店花的钱少,输出这两种情况的商品数量,若无,输出-1.
样例模拟如下:
5 10 4
-1 10
买1个商品
第一个店花费5
第二个店花费4
找不到第一个店便宜的情况,输出-1
买10个商品
第一个店花费5*10=50
第二个店花费4
第二个店便宜,输出10
对应的输出
-1 10
4 5 20
买1个商品
第一个店花费4
第二个店花费20
第一个店便宜,输出1
买5个商品
第一个店花费4*5=20
第二个店花费20
找不到第二个店便宜的情况,输出-1
对应的输出
1 -1
2 2 3
1 2
买1个商品
第一个店花费2
第二个店花费3
第一个店便宜,输出1
买2个商品
第一个店花费2*2=4
第二个店花费3
第一个店便宜,输出2
对应的输出
1 2
1000000000 1000000000 1000000000
买1个商品
第一个店花费1000000000
第二个店花费1000000000
找不到第一个店便宜的情况,输出-1
买1000000000个商品
第一个店花费1000000000*1000000000
第二个店花费1000000000
第二个店便宜,输出1000000000
对应的输出
-1 1000000000
AC代码如下:
#include <stdio.h>
#define LL long long
int main(){
int t;
LL a,b,c;
scanf("%d",&t);
while(t--){
scanf("%lld%lld%lld",&a,&b,&c);
if(a<c)printf("1 ");//选一个
else printf("-1 ");
if(a*b>c)printf("%lld\n",b);//选一堆
else printf("-1\n");
}
}