Python Dasar-dasarMudah

Ganti setiap elemen berdasarkan peringkat

Panduan terperinci dan implementasi Python untuk masalah 'Ganti setiap elemen berdasarkan peringkat'.

Pernyataan Masalah

Mudah

Tulis fungsi replace_by_rank(arr) yang menggantikan setiap elemen dalam array dengan peringkatnya ketika array diurutkan dalam urutan menaik. Elemen terkecil mendapat peringkat 1, elemen terkecil kedua mendapat peringkat 2, dan seterusnya. Jika dua elemen sama, maka mereka mendapat peringkat yang sama. Kembalikan susunan peringkat.

Kendala
  • 1 <= len(arr) <= 10^5
  • -10^9 <= arr[i] <= 10^9

Contoh

Example 1
Input
arr = [20, 15, 26, 2, 98, 6]
Output
[4, 3, 5, 1, 6, 2]
Explanation

Sorted: [2,6,15,20,26,98]. Ranks: 2->1, 6->2, 15->3, 20->4, 26->5, 98->6.

Example 2
Input
arr = [10, 10, 10]
Output
[1, 1, 1]
Explanation

All elements are equal, so all get rank 1.

Example 3
Input
arr = [5, 3, 1]
Output
[3, 2, 1]
Explanation

Sorted: [1,3,5]. Ranks: 1->1, 3->2, 5->3.

Need a Hint?
Pertimbangkan untuk menggunakan struktur data khusus Array seperti kumpulan atau tumpukan.
Edge Cases to Watch
  • Struktur masukan kosong
  • Masukan elemen tunggal
  • Batasan angka yang besar

Siap Memecahkannya?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Buka di Editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.