/* ex4_2
  sachiyan */

#include <stdio.h>
#include <math.h>


int main(void){
    int len_hour, len_minute, hour, minute; //長針、短針、時刻を定義
    double degree, difference, radian, answer;//ある時刻における針同士の角度、その絶対値、ラジアン角、答えを置く
    double pi = acos(-1); //πをdouble型で算出
    scanf("%d %d %d %d", &len_hour, &len_minute, &hour, &minute);//入力値を読み取る
    degree = 0.5*(60*hour + minute) - 6*minute;//針同士の角度を求める
    difference = fabs(degree);//角度の絶対値を求める
    radian = difference*(pi/180); //角度をラジアンに直す
    answer = sqrt(len_hour*len_hour + len_minute*len_minute - 2*len_hour*len_minute*cos(radian)); //余弦定理を使う
    printf("%.20lf\n", answer); //答えを小数点以下20位まで出力

    return 0;
}