First I added a parametric rectangular twisting mass and created floors that were 10ft apart:

Next I made the mass parametric by using number sliders for each of the input parameters with the minimum and maximum values from the problem statement, and chose fixed values for the base dimensions and top dimensions .

Next I chose my varying parameters (twist and height), inputted them into my custom node, extracted the floor area and surface area, and then exported the values to excel:

Here is the resulting excel data with green highlights for the iterations that pass the floor area requirements from the problem statement:

Here is the final iteration with a height of 700ft and a twist of 60 degrees:

For part two I decided to change the faces top and bottom planes. I changed the bottom to a circle and the top to a half circle. I added radius parameters to adjust for both planes. The bottom radius was fixed to 100 ft. The two parameters I decided to change for this part was the top radius and the building height (because changing the twist had no affect on floor area). I tested various parameters and iterations. The results with are shown below with the passing iterations highlighted in green again:

To do this I changed the dynamo code from part 1 to the following:

Finally, my building model changed to the following: