Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
为什么我考虑了出发地和目的地一样的情况还是WA...泪!!#include<iostream> #include<cmath> using namespace std; int main() { int max,count=0,mini,big,i; int p[4]; int hori,upri;//hori是横坐标之差,upri是纵坐标之差 char star[2],dest[2];//star是出发地,dest是目的地 cin>>max; while(count < max) { if( max>20 || max<0 ) break; cin>>star>>dest; if( star[0]>'f' || star[0]<'a' || star[1]>'8' || star[1]<'1') break; hori = abs(star[0] - dest[0]); upri = abs(star[1] - dest[1]); if(hori > upri) { mini = upri; big = hori; } else { mini = hori; big = upri; } if( hori==0 && upri==0 )//原地不动 for(i=0;i<4;i++) p[i]=0; else if(mini == 0 && big != 0) {//连线的斜率为0或不存在 p[0] = big; p[1] = 1; p[2] = 1; p[3] = -1;//无法到达的标记为-1 } else if(hori == upri && hori != 0 ) {//连线的斜率为±1 p[0] = mini; p[1] = 1; p[2] = 2; p[3] = 1; } else {//其他情况 p[0] = big; p[1] = 2; p[2] = 2; p[3] = -1; } for(i=0;i<3;i++) { if(p[i]!=-1) cout<<p[i]<<" "; else cout<<"Inf "; } if(p[3]!=-1) cout<<p[3]; else cout<<"Inf"; cout<<endl; count++; } return 0; } 请指教~~~!! Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator