Lanjut50 XPUnit 10: Pencarian dan Pengurutan, soal 9 dari 10

Akar Kuadrat Bulat

Hitung akar kuadrat dibulatkan ke bawah tanpa kesalahan pembulatan.

Berapa sisi persegi terbesar yang bisa dibuat dari N ubin? Jawabannya akar kuadrat N dibulatkan ke bawah. Fungsi akar bilangan desimal kadang meleset satu angka untuk bilangan besar, jadi kita cari jawabannya dengan bilangan bulat saja.

Masukan

Satu bilangan bulat N dari 0 sampai 10^15.

Keluaran

Bilangan bulat terbesar X yang memenuhi X × X ≤ N.

Contoh masukan dan keluaran

  1. Contoh 1

    Masukan

    50

    Keluaran

    7

Petunjuk

Coba kerjakan dulu. Buka petunjuk satu per satu kalau kamu buntu.

Petunjuk 1

Jawabannya berada di antara 0 dan N. Pakai pencarian biner: tebak nilai tengah, lalu periksa apakah kuadratnya masih tidak melebihi N.

Petunjuk 2

Bila kuadratnya tidak melebihi N, nilai tengah adalah kandidat jawaban dan carilah yang lebih besar. Selain itu, carilah yang lebih kecil.

Pelajari dulu konsepnyaPencarian binerAlgoritma Pencarian dan Pengurutan

Soal lain di unit Pencarian dan Pengurutan

Soal berikutnya: Banyak Inversi

Latih logika sedikit setiap hari

Ada soal harian dengan XP ganda dan liga mingguan yang dimulai dari nol setiap Senin.

Lihat semua tantangan