ITP1_10_D: Distance II

http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_10_D
n次元ユークリッド空間で色々な計測法での距離を計算する問題。

#include <stdio.h>
#include <math.h>
#include <algorithm>
#include <stdlib.h>
using namespace std;

int main() {
// your code goes here
double as[101],bs[101];
int n;
double d1=0,d2=0,d3=0,dm=0;
scanf("%d",&n);
for(int i=0;i<n;i++){
	scanf("%lf",&as[i]);
}
for(int i=0;i<n;i++){
	scanf("%lf",&bs[i]);
}
for(int i=0;i<n;i++){
	double d=fabs(as[i]-bs[i]);
	d1+=d;
	d2+=(d*d);
	d3+=(d*d*d);
	dm=std::max(d,dm);
}
printf("%lf\n%lf\n%lf\n%lf\n",d1,pow(d2,1/2.0),pow(d3,1/3.0),dm);
return 0;
}
最終更新:2016年03月22日 16:49