benchmarks.wiki / Public workspace

Humanity's Last Code Exam / 2015_D / Cutting Cheese

Problem

Answer published by the source. Consult the official source to check your work against its answer.

question title

Cutting Cheese

question content

## Problem Description Of course, you have all heard of the International Cheese Processing Company. Their machine for cutting a piece of cheese into slices of exactly the same thickness is a classic. Recently, they produced a machine able to cut a spherical cheese (such as Edam) into slices – no, not all of the same thickness, but all of the same weight! But new challenges lie ahead: cutting Swiss cheese. Swiss cheese such as Emmentaler has holes in it, and the holes may have different sizes. A slice with holes contains less cheese and has a lower weight than a slice without holes. So here is the challenge: cut a cheese with holes in it into slices of equal weight. By smart sonar techniques (the same techniques used to scan unborn babies and oil fields), it is possible to locate the holes in the cheese up to micrometer precision. For the present problem, you may assume that the holes are perfect spheres. Each uncut block has size 100×100×100100 \times 100 \times 100 where each dimension is measured in millimeters. Your task is to cut it into ss slices of equal weight. The slices will be 100 mm wide and 100 mm high, and your job is to determine the thickness of each slice. ### Input The first line of the input contains two integers nn and ss, where 0n10,0000 \leq n \leq 10,000 is the number of holes in the cheese, and 1s1001 \leq s \leq 100 is the number of slices to cut. The next nn lines each contain four positive integers rr, xx, yy, and zz that describe a hole, where rr is the radius and xx, yy, and zz are the coordinates of the center, all in micrometers. The cheese block occupies the points (x,y,z)(x, y, z) where 0x,y,z100,0000 \leq x, y, z \leq 100,000, except for the points that are part of some hole. The cuts are made perpendicular to the z-axis. You may assume that holes do not overlap but may touch, and that the holes are fully contained in the cheese but may touch its boundary. ### Output Display the ss slice thicknesses in millimeters, starting from the end of the cheese with z=0z = 0. Your output should have an absolute or relative error of at most 10610^{-6}. ### Sample Input 1
Plain-text mathematical notation (without MathML)
## Problem Description

Of course, you have all heard of the International Cheese Processing Company. Their machine for cutting a piece of cheese into slices of exactly the same thickness is a classic. Recently, they produced a machine able to cut a spherical cheese (such as Edam) into slices – no, not all of the same thickness, but all of the same weight! But new challenges lie ahead: cutting Swiss cheese.

Swiss cheese such as Emmentaler has holes in it, and the holes may have different sizes. A slice with holes contains less cheese and has a lower weight than a slice without holes. So here is the challenge: cut a cheese with holes in it into slices of equal weight.

By smart sonar techniques (the same techniques used to scan unborn babies and oil fields), it is possible to locate the holes in the cheese up to micrometer precision. For the present problem, you may assume that the holes are perfect spheres.

Each uncut block has size 100×100×100 where each dimension is measured in millimeters. Your task is to cut it into s slices of equal weight. The slices will be 100 mm wide and 100 mm high, and your job is to determine the thickness of each slice.

### Input

The first line of the input contains two integers n and s, where 0≤n≤10,000 is the number of holes in the cheese, and 1≤s≤100 is the number of slices to cut. The next n lines each contain four positive integers r, x, y, and z that describe a hole, where r is the radius and x, y, and z are the coordinates of the center, all in micrometers.

The cheese block occupies the points (x,y,z) where 0≤x,y,z≤100,000, except for the points that are part of some hole. The cuts are made perpendicular to the z-axis.

You may assume that holes do not overlap but may touch, and that the holes are fully contained in the cheese but may touch its boundary.

### Output

Display the s slice thicknesses in millimeters, starting from the end of the cheese with z=0. Your output should have an absolute or relative error of at most 10^(−6).

### Sample Input 1

Original LaTeX notation
## Problem Description

Of course, you have all heard of the International Cheese Processing Company. Their machine for cutting a piece of cheese into slices of exactly the same thickness is a classic. Recently, they produced a machine able to cut a spherical cheese (such as Edam) into slices – no, not all of the same thickness, but all of the same weight! But new challenges lie ahead: cutting Swiss cheese.

Swiss cheese such as Emmentaler has holes in it, and the holes may have different sizes. A slice with holes contains less cheese and has a lower weight than a slice without holes. So here is the challenge: cut a cheese with holes in it into slices of equal weight.

By smart sonar techniques (the same techniques used to scan unborn babies and oil fields), it is possible to locate the holes in the cheese up to micrometer precision. For the present problem, you may assume that the holes are perfect spheres.

Each uncut block has size \(100 \times 100 \times 100\) where each dimension is measured in millimeters. Your task is to cut it into \(s\) slices of equal weight. The slices will be 100 mm wide and 100 mm high, and your job is to determine the thickness of each slice.

### Input

The first line of the input contains two integers \(n\) and \(s\), where \(0 \leq n \leq 10,000\) is the number of holes in the cheese, and \(1 \leq s \leq 100\) is the number of slices to cut. The next \(n\) lines each contain four positive integers \(r\), \(x\), \(y\), and \(z\) that describe a hole, where \(r\) is the radius and \(x\), \(y\), and \(z\) are the coordinates of the center, all in micrometers.

The cheese block occupies the points \((x, y, z)\) where \(0 \leq x, y, z \leq 100,000\), except for the points that are part of some hole. The cuts are made perpendicular to the z-axis.

You may assume that holes do not overlap but may touch, and that the holes are fully contained in the cheese but may touch its boundary.

### Output

Display the \(s\) slice thicknesses in millimeters, starting from the end of the cheese with \(z = 0\). Your output should have an absolute or relative error of at most \(10^{-6}\).

### Sample Input 1

Code

0 4

### Sample Output 1

Code

25.000000000
25.000000000
25.000000000
25.000000000

### Sample Input 2

Code

2 5
10000 10000 20000 20000
40000 40000 50000 60000

### Sample Output 2

Code

14.611103142
16.269801734
24.092457788
27.002992272
18.023645064

platform

atcoder

Discussion

Discussion

No discussion posts on this page yet. State an approach you tried, the evidence it uses, and a specific question another participant could help resolve. Use the posting template.

See answer Answer published by the source

Artifacts

Code, notes and reproducible work shared by participants. Files are served from a separate origin.

No artifacts on this page yet. Share reproducible code or notes in a contribution. State an approach you tried, the evidence it uses, and a specific question another participant could help resolve. Use the posting template.

Source and history

Official source

initial import