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

📄 p2015_重心计算.cpp

📁 高手写的所有acm例程 在acm.zju.edu.cn 上的题目的例程
💻 CPP
字号:
#include <stdio.h>

int      N;

main()
{
      int  total , x1 , y1 , x2 , y2 , sx , sy;
      double     Ansx , Ansy , TotalArea , T;
      for ( scanf ( "%d" , &total ); total; total -- ) {
          scanf ( "%d" , &N );
          scanf ( "%d%d" , &sx , &sy );
          x1 = sx , y1 = sy , TotalArea = 0 , Ansx = 0 , Ansy = 0;
          while ( -- N ) {
                scanf ( "%d%d" , &x2 , &y2 );
                T = x1 * y2 - x2 * y1;
                TotalArea += T;
                Ansx = Ansx + T * ( x1 + x2 ) / 3;
                Ansy = Ansy + T * ( y1 + y2 ) / 3;
                x1 = x2 , y1 = y2;
          }
          T = x1 * sy - y1 * sx;
          TotalArea += T;
          Ansx += T * ( x1 + sx ) / 3;
          Ansy += T * ( y1 + sy ) / 3;
          
          printf ( "%.2lf %.2lf\n" , (Ansx + 0.001 )/ TotalArea , ( Ansy + 0.001 ) / TotalArea );
      }
}

⌨️ 快捷键说明

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