20세기 후반까지만 해도 고고학 유물의 실제 연대를 알아내는 일은 대부분 경험에 근거한 추측에 가까웠다. 이미 연대가 밝혀진 유물과 비교하거나 발굴 주변 환경을 조사하는 것이 그나마 가장 나은 방법이었다.
하지만 오늘날에는 훨씬 더 믿을 만한 방법이 있는데, 바로 탄소 연대 측정이다. 원리는 다음과 같다. 자연계의 탄소는 안정한 동위원소(대부분 $^{12}\mathrm{C}$)와 불안정한 방사성 동위원소 $^{14}\mathrm{C}$가 섞여 있다. 살아 있는 생물에서는 이 둘의 비율이 거의 일정하게 유지된다. $^{14}\mathrm{C}$는 서서히 붕괴하지만, 동시에 태양 복사가 대기 상층부에서 같은 양을 만들어 내고 생물이 이를 계속 흡수하기 때문이다.
그러나 예를 들어 나무를 베어 목재로 만들고 나면 더 이상 새로운 $^{14}\mathrm{C}$를 흡수하지 못하므로, 방사성 붕괴에 의해 남아 있는 양이 점점 줄어든다. 이 문제에서는 남아 있는 $^{14}\mathrm{C}$의 양으로부터 표본의 대략적인 연대를 추정하는 프로그램을 작성한다. 다음 사실을 이용한다.
예를 들어 탄소 1그램짜리 표본에서 시간당 405회의 붕괴가 측정된다면, 그 표본은 약 5730년 된 것이다.
각 줄은 연대를 측정할 표본 하나를 나타내며, 두 양의 정수 $w$와 $d$가 주어진다. $w$는 표본에 들어 있는 탄소의 양(그램)이고, $d$는 한 시간 동안 측정된 붕괴 횟수이다.
입력의 끝은 $w = d = 0$인 줄로 표시되며, 이 줄은 처리하지 않는다.
각 표본에 대해, 먼저 표본 번호를 출력한 뒤 추정 연대를 다음 형식으로 출력한다.
The approximate age is x years.
연대가 10000년 미만이면 $x$를 가장 가까운 100년 단위로 반올림한다(정확히 중간이면 올림). 연대가 10000년을 넘으면 가장 가까운 1000년 단위로 반올림한다(마찬가지로 정확히 중간이면 올림).
연속한 표본 사이에는 빈 줄을 하나 넣어 구분한다.