您的位置:首页 > 其它

Codeforces 154D

2016-12-23 15:02 417 查看
分类讨论

if 可以一步杀死

else if如果a<=0 肯定是draw

else 只能不断靠近

1.错过了 draw

2.一定有一个死

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
const int N=1e5+10;
int aa
,bb
,id
;
int vis
;
const int inf=1<<30;
int sta
,top;
int sum[N*2];

int main(){
#ifdef DouBi
freopen("in.cpp","r",stdin);
//freopen("out.cpp","w",stdout);
#endif // DouBi
int l,r,a,b;while(scanf("%d%d%d%d",&l,&r,&a,&b)!=EOF){
int flag=0;
if(l>r){
flag=1;
swap(l,r);swap(a,b);a*=-1;b*=-1;
}
if(r-l>=a&&r-l<=b){
printf("FIRST\n");
if(!flag)printf("%d\n",r);
else printf("%d\n",l);
continue;///first win
}
if(a<=0){
printf("DRAW\n");continue;
}
int x=(r-l)%(a+b);
if(x>=1&&x<=b){
if(x<a)printf("DRAW\n");
else {
printf("FIRST\n");
if(!flag)printf("%d\n",l+x);
else printf("%d\n",r-x);
}
}
else {
if(x!=0)printf("DRAW\n");
else printf("SECOND\n");
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: