AcWing 1123. 铲雪车
原题链接
考察:欧拉路径
思路:
主要是看懂这句:保证:铲雪车从起点一定可以到达任何街道。这句话的意思是说铲雪车在某条道路上.结合题意发现每个点的入度出度相等,构成欧拉路径.由此答案就是所有路径和*2.
Code
//每条边都是双向道,所以每个点入度 = 出度,存在欧拉回路
#include <iostream>
#include <cmath>
using namespace std;
typedef long long LL;
int sx,sy,dx,dy;
double Dist(int sx,int sy,int ex,int ey)
{
return sqrt((LL)(sx-ex)*(sx-ex)+(LL)(sy-ey)*(sy-ey));
}
int main()
{
scanf("%d%d",&sx,&sy);
double sum = 0;
while(scanf("%d%d%d%d",&sx,&sy,&dx,&dy)!=EOF)
sum+=Dist(sx,sy,dx,dy)*2;
double c = sum/1000/20;
int h = c;
int m = (c-h)*60+0.5;
printf("%d:%02d\n",h,m);
return 0;
}