| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
#include<stdio.h> 
int main() 
{ 
        int n,i,j,*a=0,*b=0,*a1=0,*b1=0,count=0,falg1,falg2; 
        scanf("%d",&n);         //输入有几条直线 
        int (*p)[2]=new int[n][2];       //定义一个动态数组 
        for(i=0;i<n;i++) 
                scanf("%d,%d",(*(p+i)+0),(*(p+i)+1));       //输入每条直线的斜率和斜截距, 
        for(i=0;i<=n-1;i++) 
                for(j=i+1;j<=n;j++) 
                { 
                        *a=*(*(p+i)+0)*(-10)+*(*(p+i)+1);          //前一条直线在x=-10处的值 
                *b=*(*(p+i)+0)*10+*(*(p+i)+1);                     //前一条直线在x=10处的值 
                        *a1=*(*(p+i)+0)*(-10)+*(*(p+i)+1);        //后一条直线在x=-10处的值 
                        *b1=*(*(p+i)+0)*10+*(*(p+i)+1);            //后一条直线在x=10处的值 
                        if(*a>*a1)                                                //下面就是判断直线是否有交点 
                                falg1=1; 
                        else 
                                falg1=0; 
                        if(*b>*b1) 
                                falg2=1; 
                        else 
                                falg2=0; 
                                if(falg1!=falg2) 
                                        count=count+2;                   //因为他说有k个交点就有k+1个面 ,所以是count+2         
                } 
                printf("%d",count);    输出平面数 
        return 0; 
} 
 
 
 
 
 
 
//大佬帮我!唉唉唉 |   
 
 
 
 |