比赛 |
ZLXOI2015Day1 |
评测结果 |
AAAAAAAAAAWAAWWWWAWW |
题目名称 |
殉国 |
最终得分 |
65 |
用户昵称 |
KZNS |
运行时间 |
1.185 s |
代码语言 |
C++ |
内存使用 |
0.31 MiB |
提交时间 |
2015-10-29 10:07:21 |
显示代码纯文本
// KZ's
#include <fstream>
using namespace std;
int gd(int a,int b) {
if (!a)
return b;
return gd(b%a,a);
}
int main() {
ifstream fin ("BlackHawk.in");
ofstream fout ("BlackHawk.out");
int a,b,c,x0=-1,y0=-1,x,y,mn,mx,s=1;
fin>>a>>b>>c;
int gccd=gd(a,b);
if (c%gccd) {
fout<<"-1 -1"<<endl<<0<<endl;
return 0;
}
a/=gccd;
b/=gccd;
c/=gccd;
if (b<a) {
for (int i=0;c>=a*i;i++)
if (!((c-a*i)%b)) {
x0=i;
y0=(c-a*i)/b;
mn=mx=x0+y0;
break;
}
if (x0<0||y0<0) {
fout<<"-1 -1"<<endl<<0<<endl;
return 0;
}
for (int t=1;y0>=a*t;t++) {
x=x0+b*t;
y=y0-a*t;
mn=min(mn,x+y);
mx=max(mx,x+y);
s++;
}
}
else {
for (int i=0;c>=b*i;i++)
if (!((c-b*i)%a)) {
x0=(c-b*i)/a;
y0=i;
mn=mx=x0+y0;
break;
}
if (x0<0||y0<0) {
fout<<"-1 -1"<<endl<<0<<endl;
return 0;
}
for (int t=1;x0>=b*t;t++) {
x=x0-b*t;
y=y0+a*t;
mn=min(mn,x+y);
mx=max(mx,x+y);
s++;
}
}
fout<<mn<<' '<<mx<<endl<<s<<endl;
}
// UBWH