1 条题解

  • 0
    @ 2024-12-24 10:06:07

    C :

    #include<stdio.h>
    #include<math.h>
    int p(float x,float y,float r,float a,float b)
    {
    //	if(r==0)
    //		return 0;
    	if((x-a)*(x-a)+(y-b)*(y-b)<=r*r)
    		return 1;
    	else
    		return 0;
    }
    int main()
    {
    	float s[110][3],a,b;
    	int i,j,flag,n;
    	while(scanf("%d",&n),n)
    	{
    		flag=0;
    		for(i=0;i<n;i++)
    			scanf("%f%f%f",&s[i][0],&s[i][1],&s[i][2]);
    		scanf("%f%f",&a,&b);
    		for(i=0;i<n;i++)
    			if(p(s[i][0],s[i][1],s[i][2],a,b))
    			{
    				puts("YES");
    				flag=1;
    				break;
    			}
    		if(flag==0)
    			puts("NO");
    	}
    }
    

    C++ :

    #include <stdio.h>
    
    int main() {
    	int n, i;
    	double x[100], y[100], r[100], a, b;
    	while (scanf("%d", &n) != EOF, n) {
    		for (i = 0; i < n; i++)
    			scanf("%lf%lf%lf", &x[i], &y[i], &r[i]);
    		scanf("%lf%lf", &a, &b);
    		for (i = 0; i < n; i++) {
    			if ((a - x[i]) * (a - x[i]) + (b - y[i]) * (b - y[i]) <= r[i]
    					* r[i])
    				break;
    		}
    		puts(i < n ? "YES" : "NO");
    	}
    	return 0;
    }
    

    Java :

    
    
    import java.util.Scanner;
    
    public class Main {
       private static Scanner s = new Scanner(System.in) ;
       
       public static void main(String[] args) {
    	  while(true){
    		  int n = s.nextInt() ;
    		  if(n==0){
    			  break ;
    		  }
    		  A a[] = new A[n] ;
    		  for (int i = 0; i < n; i++) {
    			double x = s.nextDouble() ;
    			double y = s.nextDouble() ;
    			double r = s.nextDouble() ;
    			a[i] = new A(x, y, r) ;
    		  }
    		  
    		  double x1 = s.nextDouble() ;
    		  double y1 = s.nextDouble() ;
    		  int sum = 0 ;
    		  for (int i = 0; i < a.length; i++) {
    			  if((a[i].x-x1)*(a[i].x-x1)+(a[i].y-y1)*(a[i].y-y1)<=a[i].r*a[i].r){
    				  sum++ ;
    			  }
    		  }
    		  if(sum>0){
    			  System.out.println("YES") ;
    		  }else {
    			  System.out.println("NO") ;
    		  }
    	  }
       }
    }
    
    class A{
    	double x ;
    	double y ;
    	double r ;
    	public A(double x, double y, double r) {
    		this.x = x;
    		this.y = y;
    		this.r = r;
    	}
    	
    }
    
    
    • 1

    信息

    ID
    1957
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者