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 |
这题真难阿Ac阿,不过总算搞定了#include<stdio.h> #include<math.h> int main() { int r,x[4],y[4],t; int i,j; double a[4],PI,m,b1,b2,b3,p,max; PI=2*acos(0);p=2*PI/3; scanf("%d",&t); while(t--) { scanf("%d",&r); for(i=1;i<4;i++)scanf("%d%d",&x[i],&y[i]); if((x[1]==0&&y[1]==0)||(x[2]==0&&y[2]==0)||(x[3]==0&&y[3]==0)){printf("No\n");continue;} for(i=1;i<4;i++) { a[i]=acos(x[i]/sqrt(x[i]*x[i]+y[i]*y[i])); if(y[i]<0)a[i]=2*PI-a[i]; } for(i=1;i<4;i++) for(j=i+1;j<4;j++) if(a[i]>a[j]){m=a[i];a[i]=a[j];a[j]=m;} if((a[1]-a[2])*(a[2]-a[3])*(a[3]-a[1])==0){printf("No\n");continue;} b1=a[2]-a[1];b2=a[3]-a[2];b3=2*PI-(a[3]-a[1]); max=b1>b2?b1:b2; max=max>b3?max:b3; if(max>=p&&max<2*p)printf("Yes\n"); else printf("No\n"); } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator