144
技術社區[雲棲]
【#define PI acos(-1.0)】【非凸包】poj 2365 Rope
這道題按順序加起來就OK了。。。
唯一要注意的就是當N==1的時候,隻輸出一個釘子的周長就ok了。。。特殊處理下就可以了
看discuss,這道題好多人用凸包做,反而錯,我現在標記一下,之後用凸包也試試。。。
另外就是#define PI acos(-1.0),可以定義π
#include <stdio.h> #include<math.h> #define PI acos(-1.0) int main() { int N; scanf("%d",&N); double R; scanf("%lf",&R); double x,y; double xx,yy; double firstX,firstY; scanf("%lf%lf",&xx,&yy); if (N==1) { printf("%.2lf\n",2*PI*R); return 0; } firstX=xx; firstY=yy; int i; double lenth=0; double tmpX,tmpY; for(i=1;i<N;i++) { scanf("%lf%lf",&x,&y); tmpX=x-xx; tmpY=y-yy; lenth+=sqrt(tmpX*tmpX+tmpY*tmpY); xx=x; yy=y; } tmpX=x-firstX; tmpY=y-firstY; lenth+=sqrt(tmpX*tmpX+tmpY*tmpY); lenth+=2*PI*R; printf("%.2lf\n",lenth); return 0; }
最後更新:2017-04-03 05:39:57