您的位置:首页 > 其它

hdu 5610 /BC 69A Baby Ming and Weight lifting

2016-01-26 22:21 281 查看
首先如果c不能整除2 则无法满足要求

然后把c分成两部分 看哑铃单侧重量c/2的情况
暴力枚举a、b中较大者的个数即可 看剩余需求重量能否整除较小数 

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cctype>
#include<cmath>
#include<vector>
#include<queue>
#include<map>
#include<algorithm>
#include<set>
#define scnaf scanf
#define cahr char
#define bug puts("bugbugbug");
using namespace std;
typedef long long ll;
const int mod=1000000007;
const int maxn=50+5;
const int inf=1e9;
const int maxe=200000;
int main()
{
int T_T,a,b,c;
scanf("%d",&T_T);
while(T_T--){
scanf("%d%d%d",&a,&b,&c);
if(c%2){
puts("Impossible");
continue;
}
c/=2;
int ans=inf,flag=0;
if(a>b) {
swap(a,b);
flag=1;
}
for(int i=c/b;i>=0;i--)
if((c-i*b)%a==0){
ans=i;
break;
}
if(ans==inf)
puts("Impossible");
else{
if(!flag)
printf("%d %d\n",2*(c-ans*b)/a,2*ans);
else
printf("%d %d\n",2*ans,2*(c-ans*b)/a);
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  bc