#include<stdio.h> #include<algorithm> using namespace std; struct zuobiao { float start; float end; }a[100]; bool cmp(zuobiao a,zuobiao b) { return a.start<b.start; } int main() { int T; scanf("%d",&T); while(T>0) { int n; scanf("%d",&n); int i; float x,y; int flag=1; for(i=0;i<n;i++) { scanf("%f%f",&x,&y); a[i].start=x>y?y:x; a[i].end=x<=y?y:x; } sort(a,a+n,cmp); float dis=a[n-1].end/n; for(i=0;i<n;i++) { if(a[i].end-a[i].start>dis) {flag=0;break;} } for(i=0;i<n;i++) { if((int)(a[i].end/dis)!=(int)(a[i].start/dis+(a[i].end-a[i].start)/dis)) {flag=0;break;} if(i!=0&&a[i].start<a[i-1].end) {flag=0;break;} } if(flag) printf("YES\n"); else printf("NO\n"); T--; } return 0; } |
Double click to view unformatted code.