⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2269748_ce.cc

📁 做的POJ的一些题目
💻 CC
字号:
#include<iostream>

#include<math.h>

using namespace std;

int addlist(double p[1000][4],int length,int r)

{
		int tmp;
		int tmpb;

     for(int i=0;i<length;i++)

             {

        cin>>p[i][0];

        cin>>p[i][1];



        p[i][2]=p[i][0]-sqrt(r*r-p[i][1]*p[i][1]);

        p[i][3]=p[i][0]+sqrt(r*r-p[i][1]*p[i][1]);

            }
		tmp = length-1;

     for(int i=0;i<tmp;i++)

             {
			if(p[i][1]>r)

          return -1;
			tmpb = length-1-i

        for(int j=0;j<tmpb;j++)

                   {

           if(p[j][2]<p[j+1][2])

                             {

             for(int k=0;k<4;k++)

                                  {

                double temp=p[j][k];

                p[j][k]=p[j+1][k];

                p[j+1][k]=temp;        

                                  }

                           }

                  }

           }
   if(p[tmp][1]>r)

        return -1;

    int count=length;

    int i=0;

    int k=0;

    while(i<tmp)

         {

       while(p[i+1][3]>=p[k][2])

                  {  

         if(i>= tmp)

           break;               

          i++;

          count--;

                 }

       i++;

       k=i;

      } 

    return count;

 }

int main()

{

    int t,r;

    int c[1000];

    int count1=0;

    while(true)

          {

       double p[1000][4]; 

       cin>>t;

       cin>>r;

       if(t==0 && r==0)

                   {

           break;        

                    }

       else

                   {

           c[count1]=addlist(p,t,r);

           count1++;

                   }

                

            }

    for(int k=0;k<count1;k++)

     cout<<"Case "<<k+1<<": "<<c[k]<<endl;

   return 0;

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -