

"""simple docstring"""




from __future__ import annotations

from statistics import mean
def   __SCREAMING_SNAKE_CASE		(		lowercase__ ):
					"""simple docstring"""
					A     =   2
					A     =   list(lowercase__ )
					A     =   [0] * len(lowercase__ )
					A     =   0
					while True:
										A     =   True
										for i, burst_time in enumerate(lowercase__ ):
															if rem_burst_times[i] > 0:
																				A     =   False
																				if rem_burst_times[i] > quantum:
																									t += quantum
																									rem_burst_times[i] -= quantum
																				else:
																									t += rem_burst_times[i]
																									A     =   t - burst_time
																									A     =   0
										if done is True:
															return waiting_times
def   __SCREAMING_SNAKE_CASE		(		lowercase__     ,				lowercase__ ):
					"""simple docstring"""
					return [burst + waiting for burst, waiting in zip(lowercase__     ,				lowercase__ )]


if __name__ == "__main__":
	__A	:       Optional[Any]        =						[3, 5, 7]
	__A	:       Tuple        =						calculate_waiting_times(burst_times)
	__A	:       Tuple        =						calculate_turn_around_times(burst_times, waiting_times)
	print('Process ID \tBurst Time \tWaiting Time \tTurnaround Time')
	for i, burst_time in enumerate(burst_times):
		print(
		    f"""  {i + 1}\t\t  {burst_time}\t\t  {waiting_times[i]}\t\t  """
		    f"""{turn_around_times[i]}"""
		)
	print(f"""\nAverage waiting time = {mean(waiting_times):.5f}""")
	print(f"""Average turn around time = {mean(turn_around_times):.5f}""")








"""simple docstring"""




__A	:       dict[str, float]        =						{
    "kilogram": 1,
    "gram": pow(10, 3),
    "milligram": pow(10, 6),
    "metric-ton": pow(10, -3),
    "long-ton": 0.00_09_84_20_73,
    "short-ton": 0.00_11_02_31_22,
    "pound": 2.20_46_24_42_02,
    "stone": 0.15_74_73_17_28,
    "ounce": 35.2_73_99_07_23,
    "carrat": 50_00,
    "atomic-mass-unit": 6.0_2213_6652E26,
}

__A	:       dict[str, float]        =						{
    "kilogram": 1,
    "gram": pow(10, -3),
    "milligram": pow(10, -6),
    "metric-ton": pow(10, 3),
    "long-ton": 10_16.0_46_08,
    "short-ton": 9_07.1_84,
    "pound": 0.45_35_92,
    "stone": 6.3_50_29,
    "ounce": 0.0_28_34_95,
    "carrat": 0.00_02,
    "atomic-mass-unit": 1.6_6054_0199E-27,
}
def   __SCREAMING_SNAKE_CASE		(		lowercase__     ,				lowercase__     ,				lowercase__ ):
					"""simple docstring"""
					if to_type not in KILOGRAM_CHART or from_type not in WEIGHT_TYPE_CHART:
										A     =   (
										    F"""Invalid 'from_type' or 'to_type' value: {from_type!r}, {to_type!r}\n"""
										    F"""Supported values are: {", ".join(lowercase__ )}"""
										)
										raise ValueError(lowercase__ )
					return value * KILOGRAM_CHART[to_type] * WEIGHT_TYPE_CHART[from_type]


if __name__ == "__main__":
	import doctest

	doctest.testmod()





