Sort Circles By Area (OOP)
Programming Interview
Medium
7 views
Problem Description
Input provides {x}. Create Circle class with area() and sort circles by area ascending. Output sorted radii.
Input Format
First line n. Second line n radii.
Output Format
One line sorted radii.
Official Solution
import sys
p=sys.stdin.read().strip().split()
if not p: sys.exit(0)
n=int(p[0])
r=list(map(int,p[1:1+n]))
pi=3.141592653589793
class Circle:
def __init__(self,r):
self.r=r
def area(self):
return pi*self.r*self.r
arr=[Circle(x) for x in r]
arr.sort(key=lambda c:(c.area(),c.r))
sys.stdout.write(' '.join(str(c.r) for c in arr))
Solutions (0)
No solutions submitted yet. Be the first!
No comments yet. Start the discussion!