잠수함 깊이, 전투기 높이, 수평 거리와 굴절률을 입력받아 굴절 후 전투기에 닿는 레이저 발사각을 구합니다.
보통5이분 탐색수학아직 제출이 없습니다시간 제한1초메모리 제한256 MB
잠수함이 통신용 레이저로 상공을 지나는 제트기에 신호를 보낸다. 바다 표면은 평평하다. 잠수함은 표면에서 깊이 d 아래를 지나고, 제트기는 표면에서 높이 h 인 곳에 있으며 잠수함에서 수평 거리 x 만큼 떨어져 있다. 잠수함은 통신을 시작하기 전에 제트기 쪽으로 방향을 돌렸으므로, 이제 레이저를 겨눌 고도각 ϕ 만 정하면 된다.
레이저가 바닷물에서 공기로 빠져나갈 때는 굴절이 일어나 진행 경로가 꺾인다. 굴절은 스넬의 법칙을 따른다. 수평인 경계면에 수직선 기준 각 θ1 로 도달한 빛은 각 θ2 로 빠져나가고, 두 각은 다음 식을 만족한다.
sinθ2sinθ1=n2n1

θ1 은 물속에서, θ2 는 공기 중에서 각각 수직선을 기준으로 잰 각이고, n1 과 n2 는 각각 물과 공기의 굴절률이다. 어떤 물질의 굴절률은 그 물질 안에서 빛이 나아가는 속도에 반비례한다.
고도각 ϕ 는 잠수함이 있는 자리에서 수평선을 기준으로 잰다.
입력은 데이터 세트 하나 이상으로 이루어진다.
각 데이터 세트는 실수 다섯 개가 차례대로 적힌 한 줄이다.
d 가 0인 줄이 나오면 입력이 끝난다. 이 줄은 다섯 수가 모두 0이고 데이터 세트가 아니다.
각 데이터 세트마다 잠수함이 제트기를 비추려면 레이저를 겨눠야 하는 고도각을 도 단위로 한 줄에 출력한다. 각도는 100분의 1도 단위로 반올림하고, 소수점 아래 두 자리를 정확히 출력한다.