Wednesday, May 13, 2015

UVa 10451 - Ancient Village Sports

// UVa 10451 - Ancient Village Sports

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

double pi = 2 * acos(0);

int main() {
	int n, t = 0;
	double A;
	while (cin >> n >> A && n >= 3) {
		t++;
		double At = A / n;
		double alpha = 360.0 / n;
		double ganma = 90 - 180.0 / n;
		double rc = sqrt(2 * At / sin(alpha / 180 * pi));
		double b = rc * sin(alpha / 180 * pi) / sin(ganma / 180 * pi);
		double h = 2 * At / b;
		double Ac = rc * rc * pi;
		double Ai = h * h * pi;
		printf("Case %d: %.5f %.5f\n", t, Ac - A, A - Ai);
	}
	return 0;
}

1 comment:

  1. Can you give me the source of formula for finding radius of inner circle ??

    ReplyDelete