class alphabat_qsort:
def __init__(self, data):
self.data = data
def alphabat(self):
if self.data == 1:
return self.ata
alpha_list = []
self.s_alpha = []
self.ㅣ_alpha = []
for idx in self.data:
ord_alphabat = ord(idx)
alpha_list.append(ord_alphabat)
for jdx in self.alphabat_list:
if 97 <= jdx <= 122:
self.s_alpha.append(jdx)
elif 65 <= jdx <= 90:
self.l_alpha.append(jdx)
def s_alphabat_qsort(self):
if len(self.s_alpha) <= 1:
return self.s_alpha
pivot = self.s_list[0]
s_s = []
e_s = []
l_s = []
for idx in self.s_alpha:
if idx <= pivot:
s_s.append(idx)
elif idx >= pivot:
l_s.append(idx)
else:
e_s.append(idx)
self.sorted_s_list = s_alphabat_qsort(s_s) + e_s + s_alphabat_qsort(l_s)
def l_alphabat_qsort(self):
if len(self.l_alpha) <= 1:
return self.l_alpha
pivot = self.l_list[0]
s_l = []
e_l = []
l_l = []
for idx in self._alpha:
if idx <= pivot:
s_l.append(idx)
elif idx >= pivot:
l_l.append(idx)
else:
e_l.append(idx)
self.sorted_l_list = s_alphabat_qsort(self.s_s) + self.e_l + self.ㅣ_alphabat_qsort(self.l_s)
def alphabat_qsort(self):
return self.sorted_l_list + self.sorted_s_list
A = ["A","C","A","R","g","s","t","d","e","h","a"]
alphabat_qsort(A)
Y2xhc3MgYWxwaGFiYXRfcXNvcnQ6CiAgICBkZWYgX19pbml0X18oc2VsZiwgZGF0YSk6CiAgICAgICAgc2VsZi5kYXRhID0gZGF0YQoKICAgIGRlZiBhbHBoYWJhdChzZWxmKToKCiAgICAgICAgaWYgc2VsZi5kYXRhID09IDE6CiAgICAgICAgICAgIHJldHVybiBzZWxmLmF0YQoKICAgICAgICBhbHBoYV9saXN0ID0gW10KICAgICAgICBzZWxmLnNfYWxwaGEgPSBbXQogICAgICAgIHNlbGYu44WjX2FscGhhID0gW10KCiAgICAgICAgZm9yIGlkeCBpbiBzZWxmLmRhdGE6CiAgICAgICAgICAgIG9yZF9hbHBoYWJhdCA9IG9yZChpZHgpCgogICAgICAgICAgICBhbHBoYV9saXN0LmFwcGVuZChvcmRfYWxwaGFiYXQpCgogICAgICAgICAgICBmb3IgamR4IGluIHNlbGYuYWxwaGFiYXRfbGlzdDoKCiAgICAgICAgICAgICAgICBpZiA5NyA8PSBqZHggPD0gMTIyOgogICAgICAgICAgICAgICAgICAgIHNlbGYuc19hbHBoYS5hcHBlbmQoamR4KQogICAgICAgICAgICAgICAgZWxpZiA2NSA8PSBqZHggPD0gOTA6CiAgICAgICAgICAgICAgICAgICAgc2VsZi5sX2FscGhhLmFwcGVuZChqZHgpCgoKICAgICAgICBkZWYgc19hbHBoYWJhdF9xc29ydChzZWxmKToKCiAgICAgICAgICAgIGlmIGxlbihzZWxmLnNfYWxwaGEpIDw9IDE6CiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5zX2FscGhhCiAgICAgICAgICAgIHBpdm90ID0gc2VsZi5zX2xpc3RbMF0KCiAgICAgICAgICAgIHNfcyA9IFtdCiAgICAgICAgICAgIGVfcyA9IFtdCiAgICAgICAgICAgIGxfcyA9IFtdCgogICAgICAgICAgICBmb3IgaWR4IGluIHNlbGYuc19hbHBoYToKICAgICAgICAgICAgICAgIGlmIGlkeCA8PSBwaXZvdDoKICAgICAgICAgICAgICAgICAgICBzX3MuYXBwZW5kKGlkeCkKICAgICAgICAgICAgICAgIGVsaWYgaWR4ID49IHBpdm90OgogICAgICAgICAgICAgICAgICAgIGxfcy5hcHBlbmQoaWR4KQogICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICBlX3MuYXBwZW5kKGlkeCkKCiAgICAgICAgICAgIHNlbGYuc29ydGVkX3NfbGlzdCA9IHNfYWxwaGFiYXRfcXNvcnQoc19zKSArIGVfcyArIHNfYWxwaGFiYXRfcXNvcnQobF9zKQoKICAgICAgICBkZWYgbF9hbHBoYWJhdF9xc29ydChzZWxmKToKCiAgICAgICAgICAgIGlmIGxlbihzZWxmLmxfYWxwaGEpIDw9IDE6CiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5sX2FscGhhCiAgICAgICAgICAgIHBpdm90ID0gc2VsZi5sX2xpc3RbMF0KCiAgICAgICAgICAgIHNfbCA9IFtdCiAgICAgICAgICAgIGVfbCA9IFtdCiAgICAgICAgICAgIGxfbCA9IFtdCgogICAgICAgICAgICBmb3IgaWR4IGluIHNlbGYuX2FscGhhOgogICAgICAgICAgICAgICAgaWYgaWR4IDw9IHBpdm90OgogICAgICAgICAgICAgICAgICAgIHNfbC5hcHBlbmQoaWR4KQogICAgICAgICAgICAgICAgZWxpZiBpZHggPj0gcGl2b3Q6CiAgICAgICAgICAgICAgICAgICAgbF9sLmFwcGVuZChpZHgpCiAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgIGVfbC5hcHBlbmQoaWR4KQoKICAgICAgICAgICAgc2VsZi5zb3J0ZWRfbF9saXN0ID0gc19hbHBoYWJhdF9xc29ydChzZWxmLnNfcykgKyBzZWxmLmVfbCArIHNlbGYu44WjX2FscGhhYmF0X3Fzb3J0KHNlbGYubF9zKQoKICAgICAgICBkZWYgYWxwaGFiYXRfcXNvcnQoc2VsZik6CgogICAgICAgICAgICByZXR1cm4gc2VsZi5zb3J0ZWRfbF9saXN0ICsgc2VsZi5zb3J0ZWRfc19saXN0CgpBID0gWyJBIiwiQyIsIkEiLCJSIiwiZyIsInMiLCJ0IiwiZCIsImUiLCJoIiwiYSJdCgphbHBoYWJhdF9xc29ydChBKQo=