#include "bits/stdc++.h"
using namespace std;

int main() {
	long long N, L, T[3000];
	double ANSX = 0, ANSY = 0, PI = 3.14159265358979323846;
	cin >> N >> L;
	L *= 2;
	for (int i = 0; i < N; i++) cin >> T[i], T[i] *= 2;
	for (int i = 0; i < N; i++) {
		for (int j = 0; j < N; j++) {
			if (i == j) continue;
			if (i < j) {
				ANSX += cos(2 * PI * (((T[i] + T[j]) / 2) % L) / (double)L) * ((i - j - 1 + N) % N);
				ANSY += sin(2 * PI * (((T[i] + T[j]) / 2) % L) / (double)L) * ((i - j - 1 + N) % N);
			}
			else {
				ANSX += cos(2 * PI * (((T[i] + T[j] + L) / 2) % L) / (double)L) * ((i - j - 1 + N) % N);
				ANSY += sin(2 * PI * (((T[i] + T[j] + L) / 2) % L) / (double)L) * ((i - j - 1 + N) % N);
			}
		}
	}
	ANSX /= (double)(N * (N - 1) * (N - 2) / 6), ANSY /= (double)(N * (N - 1) * (N - 2) / 6);
	printf("%.12lf %.12lf\n", ANSX, ANSY);
}