栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 1598 One

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 1598 One

#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int wk[2],bk[2],wq[2];int s[9][2]={{-1,0},{1,0},{0,1},{0,-1},{-1,-1},{1,1},{-1,1},{1,-1},{0,0}}; int* check(){int *res = new int[2];res[0] = res[1] = 0;int dwq[2],dbk[2]; for(int i=0;i<8;i++){dwq[0] = wq[0]; dwq[1] = wq[1];while(true){ dwq[0] += s[i][0]; dwq[1] += s[i][1];if((dwq[0]==wk[0]&&dwq[1]==wk[1])||(dwq[0]==bk[0]&&dwq[1]==bk[1])||dwq[0]<1||dwq[0]>8||dwq[1]<1||dwq[1]>8) break; int j;for(j=0;j<9;j++){ dbk[0] = bk[0]+s[j][0];dbk[1] = bk[1]+s[j][1];if(dbk[0]<1||dbk[0]>8||dbk[1]<1||dbk[1]>8) continue;int t1 = wk[0] - dbk[0], t2 = wk[1] - dbk[1];if(t1>=-1&&t1<=1&&t2>=-1&&t2<=1) continue; int dx = dbk[0] - dwq[0], dy = dbk[1] - dwq[1];if(dx==0&&dy==0) break;int k;for(k=0;k<8;k++){ if(s[k][1]==0){if(dy!=0 || dx * s[k][0]<0) continue; if(wk[1]-dwq[1]==0&&(wk[0]-dwq[0])*(wk[0]-dbk[0])<0) k=8;  break;  }else if(s[k][0]==0){if(dx!=0 || dy * s[k][1]<0) continue;if(wk[0]-dwq[0]==0&&(wk[1]-dwq[1])*(wk[1]-dbk[1])<0) k=8; break; }else{if(dx*s[k][0]<=0||dy*s[k][1]<=0||dx*s[k][0]!=dy*s[k][1]) continue;int t1 = wk[0] - dwq[0], t2 = wk[1] - dwq[1];if(t1*s[k][0]>0 && t2*s[k][1]>0 && t1*s[k][0]==t2*s[k][1] && t2*(wk[1]-dbk[1])<0) k=8; break;}}if(k==8) break;}if(j==9){ res[0] = dwq[0]; res[1] = dwq[1];return res;}}}return res;}int main(){char c1,c2,c3,c4,c5,c6;while(scanf("%c%c %c%c %c%cn",&c1,&c2,&c3,&c4,&c5,&c6)==6){wk[0] = c1-'a'+1; wk[1] = c2-'0';wq[0] = c3-'a'+1; wq[1] = c4-'0';bk[0] = c5-'a'+1; bk[1] = c6-'0';int *res = check();if(res[0]==0) printf("non");else printf("%c%dn",res[0]+'a'-1,res[1]);delete res;}return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/379544.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号