123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
-
- def sort_1():
- fone_book = {}
- req_list = []
- rec_cnt = int(input())
- for i in range(rec_cnt):
- record = input().split()
- if record[1] not in fone_book.keys():
- fone_book[record[1]] = [record[0]]
- else:
- tmp = fone_book[record[1]]
- tmp.append(record[0])
- fone_book[record[1]] = tmp
- req_cnt = int(input())
- for i in range(req_cnt):
- req_list.append(input())
- for i in req_list:
- if i in fone_book.keys():
- print(*fone_book[i])
- else:
- print('Неизвестный номер')
-
- def sort_2():
- birthday_book = {}
- req_list = []
- rec_cnt = int(input())
- for i in range(rec_cnt):
- record = input().split()
- if record[2] not in birthday_book.keys():
- birthday_book[record[2]] = [[record[0], record[1]]]
- else:
- tmp = birthday_book[record[2]]
- tmp.append([record[0], record[1]])
- birthday_book[record[2]] = tmp
- req_cnt = int(input())
- for i in range(req_cnt):
- req_list.append(input())
- for i in req_list:
- if i in birthday_book.keys():
- for j in birthday_book.get(i):
- print(j[0], end=' ')
- print()
- else:
- print('Нет данных')
- def sort_3():
- drivers = {}
- new_drivers = []
- in_str = ""
- in_data = []
-
- while True:
- int_str = input()
- if int_str == "конец":
- break
- in_data = int_str.split(", ")
- if in_data[0] not in drivers.keys():
- drivers[in_data[0]] = [int(in_data[1]), 1]
- else:
- drivers[in_data[0]] = [drivers.get(in_data[0])[0] + int(in_data[1]), drivers.get(in_data[0])[1] + 1]
-
- for key, value in drivers.items():
- new_drivers.append((key, value[0]/value[1]))
- new_drivers = sorted(new_drivers, key=lambda x: (-x[1], x[0][0]))
- for i in new_drivers:
- print(i[0], i[1])
- def sort_bubble():
- a = [1, 7, -3, 9, 0, -67, 34, 12, 45, 1000, 6, 8, -2, 99]
- n = len(a)
- flag = True
- for i in range(n - 1):
- flag = True
- for j in range(n - i - 1):
- if a[j] > a[j + 1]:
- a[j], a[j + 1] = a[j + 1], a[j]
- flag = False
- if flag == True:
- break
- print('Отсортированный список:', a)
-
- def sort_selection():
- a = [78, -32, 5, 39, 58, -5, -63, 57, 72, 9, 53, -1, 63, -97,
- -21, -94, -47, 57, -8, 60, -23, -72, -22, -79, 90, 96, -41,
- -71, -48, 84, 89, -96, 41, -16, 94, -60, -64, -39, 60, -14,
- -62, -19, -3, 32, 98, 14, 43, 3, -56, 71, -71, -67, 80, 27,
- 92, 92, -64, 0, -77, 2, -26, 41, 3, -31, 48, 39, 20, -30,
- 35, 32, -58, 2, 63, 64, 66, 62, 82, -62, 9, -52, 35, -61,
- 87, 78, 93, -42, 87, -72, -10, -36, 61, -16, 59, 59, 22,
- -24, -67, 76, -94, 59]
- n = len(a)
-
- new_a = []
- for i in range(len(a)):
- el = min(a)
- index = a.index(el)
- a.pop(index)
- new_a.append(el)
- print(new_a)
- def sort_simple_insertion():
- a = [1, 7, -3, 9, 0, -67, 34, 12, 45, 1000, 6, 8, -2, 99]
- n = len(a)
- for i in range(1, n):
- elem = a[i]
- j = i
-
-
- while j >= 1 and a[j - 1] > elem:
-
- a[j] = a[j - 1]
-
- j -= 1
-
-
- a[j] = elem
- for i in range(1, n):
- elem = a[1]
- j = i
- print('Отсортированный список:', a)
-
-
- def binary_search(list, key):
- low = 0
- high = len(list) - 1
- while low <= high:
- mid = (low + high) // 2
- midVal = list[mid]
- if midVal == key:
- return mid
- if midVal > key:
- high = mid - 1
- else:
- low = mid + 1
- return 'not found :('
|