. Pelengkap Nombor

WBOY
Lepaskan: 2024-08-23 06:35:11
asal
547 orang telah melayarinya

. Number Complement

476. Pelengkap Nombor

Kesukaran: Mudah

Topik: Manipulasi Bit

Pelengkap integer ialah integer yang anda dapat apabila anda membalikkan semua 0 kepada 1 dan semua 1 kepada 0 dalam perwakilan binarinya.

  • Sebagai contoh, Integer 5 ialah "101" dalam binari dan pelengkapnya ialah "010" iaitu integer 2.

Diberikan nombor integer, kembalikan pelengkapnya.

Contoh 1:

  • Input: nombor = 5
  • Output: 2
  • Penjelasan: Perwakilan binari 5 ialah 101 (tiada bit sifar pendahuluan), dan pelengkapnya ialah 010. Jadi anda perlu mengeluarkan 2.

Contoh 2:

  • Input: nombor = 1
  • Output: 0
  • Penjelasan: Perwakilan binari 1 ialah 1 (tiada bit sifar pendahuluan), dan pelengkapnya ialah 0. Jadi anda perlu mengeluarkan 0.

Kekangan:

  • 1 <= num < 231

Nota: Soalan ini sama dengan 1009. Pelengkap Integer Asas 10

Penyelesaian:

Kita perlu membalikkan bit perwakilan binari bagi integer tertentu dan mengembalikan integer yang terhasil.

Langkah-langkah untuk menyelesaikan masalah:

  1. Tukar nombor kepada perwakilan binarinya.
  2. Terbalikkan bit (iaitu, tukar 0 kepada 1 dan 1 kepada 0).
  3. Tukar rentetan binari terbalik kembali kepada integer.

Mari laksanakan penyelesaian ini dalam PHP: 476. Pelengkap Nombor






Penjelasan:

  • decbin($num): Menukar integer yang diberikan kepada perwakilan rentetan binarinya.
  • Membalikkan bit: Kami melelang melalui rentetan binari dan menyelak setiap bit dengan menyemak sama ada ia adalah 1 atau 0.
  • bindec($flipped): Menukar rentetan binari terbalik kembali kepada integer.

Contoh Larian:

  1. Input: 5

    • Perwakilan binari: "101"
    • Perduaan terbalik: "010"
    • Output: 2
  2. Input: 1

    • Perwakilan binari: "1"
    • Perduaan terbalik: "0"
    • Output: 0

Penyelesaian ini mengira pelengkap dengan cekap dengan membalikkan bit perwakilan binari nombor yang diberikan.

Pautan Kenalan

Jika anda mendapati siri ini membantu, sila pertimbangkan untuk memberi repositori bintang di GitHub atau berkongsi siaran pada rangkaian sosial kegemaran anda ?. Sokongan anda amat bermakna bagi saya!

Jika anda mahukan kandungan yang lebih berguna seperti ini, sila ikuti saya:

  • LinkedIn
  • GitHub

Atas ialah kandungan terperinci . Pelengkap Nombor. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan