Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import heapq
- # Data nama dan NIM
- data_nim = {
- "Radhitya Kurnia Asmara": "J0403241105",
- "Rizky Ramadhan Agmer": "J0403241092",
- "Faza Izzaturafi": "J0403241102",
- "Banu Pandara": "J0403241097",
- "M. Rifal Dzulfikar": "J0403241164"
- }
- # Urutkan berdasarkan nama
- sorted_names = sorted(data_nim.keys())
- # Ambil 3 digit terakhir dari NIM masing-masing
- numbers = []
- for name in sorted_names:
- nim = data_nim[name]
- last3 = nim[-3:]
- numbers.extend([int(d) for d in last3])
- print("Data awal (gabungan digit):", numbers)
- # Buat Max Heap
- max_heap = [-x for x in numbers]
- heapq.heapify(max_heap)
- print("Heap awal:", [-x for x in max_heap])
- # Insert 4 data baru
- new_data = [3, 8, 6, 7]
- for val in new_data:
- heapq.heappush(max_heap, -val)
- print("Setelah insert:", [-x for x in max_heap])
- # Delete 2 bilangan ganjil terbesar
- deleted = []
- while len(deleted) < 2 and max_heap:
- val = -heapq.heappop(max_heap)
- if val % 2 == 1:
- deleted.append(val)
- print("Data yang dihapus (ganjil terbesar):", deleted)
- print("Heap akhir:", [-x for x in max_heap])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement